sha256sum文件哈希值和直接哈希字符串的哈希值不一样

news/2024/11/17 11:46:32/文章来源:https://www.cnblogs.com/searchstar/p/18437337

例如在文件test.txt里写入

test

没有换行。

然后

sha256sum test.txt

出来的结果是

f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2  test.txt

但是在这个网站上
http://encode.chahuo.com/
输入test,然后以sha256方式哈希得到的结果是

9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08

两者不一致。

stat test.txt
  文件:test.txt大小:5         	块:8          IO 块:4096   普通文件
设备:10301h/66305d	Inode:270564      硬链接:1
权限:(0644/-rw-r--r--)  Uid:( 1000/searchstar)   Gid:( 1000/searchstar)
最近访问:2020-04-23 11:53:08.989247877 +0800
最近更改:2020-04-23 11:53:03.077686032 +0800
最近改动:2020-04-23 11:53:03.077686032 +0800
创建时间:-

会发现大小为5字节,说明linux的文件中加上了其他东西。
hexdump来看看到底加上了什么。
在这里插入图片描述
居然是0x0a,也就是\n。为了验证,用vscode打开它看看
在这里插入图片描述
末尾果然多了个换行符。把它去掉,保存。
在这里插入图片描述
文件大小变回4字节了,而且sha256sum的输出也和网站一样了。

此外,还可以尝试让sha256sum直接从stdin中读入

sha256sum -

然后输入

test<EOF>

其中EOF在linux上一般是ctrl+d。
然后得到的结果就是

9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08

与网站上的一致了。

为什么要自动加一个换行呢?

如果没有换行,那就会这样
在这里插入图片描述
自动加上了换行,就会这样
在这里插入图片描述

vim中禁用自动加换行

参考:https://stackoverflow.com/questions/1050640/vim-disable-automatic-newline-at-end-of-file
~/.vimrc中加入

set noeol
set nofixendofline

两个缺一不可,而且只有新建文件时才有用,打开已有文件时仍然不能显示出多加的那个空行。最气的是当没有最后的空行,然后又自己手动加一个,保存关闭再打开之后空行又不显示了。说好的Linux高自由度呢???

祭奠我逝去的一小时

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/805166.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

F-Droid使用教程

F-Droid下载地址:https://f-droid.org/ 默认的官方源太慢了。建议更换清华源。官方教程:https://mirrors.tuna.tsinghua.edu.cn/help/fdroid/ 先打开F-Droid,进入设置->存储库点进F-Droid存储库,可能会看到一些官方镜像:如果啥也没有,可能等一段时间就会出现。 把这些…

WPF 的Image 控件 设置 Image.Source 的数据源,可能存在跨线程调用的问题。

相信很多WPF 的开发,应该都很多用到 Image 这个控件来显示图片。这个图片的来源可以来自各种各样的方式获取到。 我们的组内白板、批注的扫码的功能也用到这个去生成二维码,生成后,二维码显示不出来,由于触发到了全局捕获,界面又没有崩溃,遇到了好几个坑,记录一下。 开始…

7-访问控制技术原理与应用

7.1 访问控制概述 1)概念 访问控制是指对资源对象的访问者授权、控制的方法及运行机制。 访问者又称为主体,可以是用户、进程、应用程序等; 资源对象又称为客体,即被访问的对象,可以是文件、应用服务、数据等; 授权是访问者可以对资源对象进行访问的方式,如文件的读、写、…

【赵渝强老师】基于大数据组件的平台架构

在了解了大数据各个生态圈所包含的组件及其功能特性后,就可以利用这些组件来搭建一个大数据平台从而实现数据的存储和数据的计算。下图展示了大数据平台的整体架构。视频讲解如下:大数据平台的Lambda架构大数据平台的Kappa架构大数据平台的总体架构可以分为五层,分别是:数据…

ctfshow-web-信息搜集(11-17)

web11 题目提示:域名其实也可以隐藏信息,比如ctfshow.com就隐藏了一条信息。 原理:通过Dns检查查询Flag。这里可以用阿里云的网站: Dns查询网站:阿里云网站运维检测平台 (aliyun.com)web12 题目提示:有时候网站上的公开信息,就是管理员常用密码 原理:查看robots.txt文件…

设备管理平台-支持快速开发

技术路线(同时支持前后端分离 / 前后端一体,可用于网关或者服务器部署) 前端:layui-v2.9.17 后端:Net8.0 使用组件 Swagger、Jwt、Freesql、MiniExcel、MemoryCache(存储登录用户信息,代替HttpContext.Session,也可使用Redis)系统架构 非市面上繁杂的架构(Model、Ser…

几款文本编辑器横向比较

文本编辑器 大文件编辑器 程序员编辑器几款文本编辑器横向比较 关键字: 大文件、编辑器 ‍ 编辑器功能及性能比较免责声明以下列选编辑器,仅限于本人日常接触的产品,带有强烈的个人主观和随机性,未列选产品并不代表不能满足功能需求。 测试数据(特别是时间),受限于观察条…

设备云平台

技术路线(同时支持前后端分离 / 前后端一体,可用于网关或者服务器部署) 前端:layui-v2.9.17 后端:Net8.0 使用组件 Swagger、Jwt、Freesql、MiniExcel、MemoryCache(存储登录用户信息,代替HttpContext.Session,也可使用Redis)系统架构 非市面上繁杂的架构(Model、Ser…

系统集成项目管理工程师笔记1 - 第一章 信息化发展

基础知识 第一章 信息化发展 1.1 信息与信息化 1.1.1 信息基础信息物质、能量以及其属性的标示的集合,是确定性的增加。以物质介质为载体,传递和反映世界各种事物存在方式、运动状态等的表征。信息不是物质,也不是能力。以一种普遍形式,表达物质运动规律,在客观世界中大量…

基于CTFshow的文件上传二次渲染绕过与CTF实战

1. 二次渲染简介 二次渲染指的是上传的文件(如图片),为了显示的更加规范(尺寸、像素),网站会对文件进行二次处理,经过解码或转换可能导致其中的恶意代码失效。例如,后门程序在图像渲染过程中可能被清除或无法执行。 2. 二次渲染存在性判断 2.1 文件大小变化 访问上传的…

一万次悲伤 吉他谱

本文来自博客园,作者:ukyo--夜王,转载请注明原文链接:https://www.cnblogs.com/ukzq/p/18437154