密码学是在区块链技术中承担着非常重要的角色,但其实,在互联网中,也大量的使用着密码学的技术,本文将介绍现代密码学中的早期加密方法,这将有助于我们理解区块链中的复杂算法。本文带着大家自己实现一个简单但也很实用的加密方法,让大家了解实际项目开发中数据加密的流程。
关于加密的算法很多,实际实现过程千差万别,下图是一个常见的网络通信加密的应用场景。
密码机的一些说明:
如上图所示,基于C/S架构的服务器和客户端通信模型,
下面以客户端如果要发送一段加密的密文给服务器,C/S需要交互的流程。
首先服务器端、客户端都保存了一个默认的密钥
服务器端随机生成密钥keygen,并使用该默认密钥对keygen加密,生成密钥密文
客户端可以通过命令定期请求该密钥密文或者服务器定时下发
客户端收到密钥密文后,也可以通过默认密钥进行解密得到明文的keygen
客户端在发送数据之前,首先生成一个同步码
将同步码和keygen设置给密码机,然后向密码机申请一定长度的密钥
将明文和密钥通过一定的算法进行加密(通常是异或),生成数据密文
客户端将数据密文和同步码明文一起发送给服务器
服务器提取出同步码
服务器将keygen和同步码设置给密码机,同时申请一定数量的密钥
服务器根据密钥对密文进行解密,即得到对应的明文
因为服务器和客户端此时都使用了相同的keygen,和同步码,所以双方申请的密钥序列一定是一样的。
下面是实现的加密算法的一些函数原型以及功能说明,这些函数基本实现了第一节的功能。
最终文件如下:
示例1 检测产生的随机序列
执行结果:
可以看到采用不同的keygen产生的随机序列是不一样的。
如果设置不同的同步码,仍然序列还会不一样。
示例2 用默认keygen,加解密
测试结果
示例3 用不同的keygen和同步码加解密
执行结果如下:
可见我们的确实现了数据的加密和解密。
假定我们使用上述实例代码,把对应的功能移植到C/S两端,
那么一次完整的数据加密以及数据的传输参考流程如下:
记住一点,只要双方设置相同的keygen和同步码,那么密码机吐出来的密钥就是相同序列,
客户端发送每发送一个报文,就把自己的明文同步码一起发送给服务器,
服务器根据提前发送给客户端的keygen和同步码就可以实现解密操作,
虽然你可以看到明文的同步码,
但是还需要破解密码机算法、服务器下发的keygen密文。
实现加密算法的主要问题是如何产生随机序列作为密钥。本例是借用库函数rand() 原型如下:
函数rand() 虽然可以产生随机序列,但是每次产生的序列其实顺序是一样的。
运行结果如下:
要想每次都产生不一样的随机序列应该怎么办呢?需要借助srand()函数
只需要通过该函数设置一个种子,那么产生的序列,就会完全不一样,
通常我们用time()返回值作为种子,
在此我们随便写入几个数据,来测试下该函数
执行结果如下:
可见输入不同的种子就会产生不同的序列。
函数原型如下:
图片本例原理比较简单,没有考虑太复杂的应用(比如多路密钥的管理)和数据安全性,
只阐述加解密的流程,仅作为学习理解加解密流程用,此种加密算法属于对称加密,相对比较简单,还是比较容易破解。
目前市场上都是由专业的公司和团队实现加解密功能。现在区块链常用的算法,如sha256,都是继承单向函数的设计思维,一个方向计算容易,反过来几乎不能破解,来保证安全。[来源:一口linux]
延伸阅读:密码三要素:明密文,密钥和算法。算法就是你说的“加密原理”。要解密,还要知道密钥。现代密码的基本要求之一就是:密码的安全性不依赖于加密方法的保密。也就是说,破译方即使知道加密方法和密文,不知道密钥也无法还原出明文。
文档加密软件都有哪些?加密软件分享来了,您了解多少!
企业加密软件排行榜有哪些?宝藏级企业加密软件分享指南,码住了 !
如何直接给文档加密?分享这款文档透明加密软件,2026用心整理!
添加专业出黑老师QQ微信→【xsj66889911】←许多人就是经不起引诱,为了那些所谓的反水等福利,殊不知那些都是钓饵,引你上钩,黑你就是这样开始了。网站方都有哪些借口:你的账户异常登录、网站维护、
添加专业出黑老师QQ微信→【xsj66889911】←许多人就是经不起引诱,为了那些所谓的反水等福利,殊不知那些都是钓饵,引你上钩,黑你就是这样开始了。网站方都有哪些借口:你的账户异常登录、网站维护、
企业文件安全该怎么防护?2026 精选文件安全管理软件分享,核心文件不泄露!
公司文件防泄密软件哪个好?2026 甄选防泄密软件,文件安全不泄露!
2026 年透明加密软件甄选,企业级工具,IT 人必看!
终结“偷油”黑幕!安企神软件助力加油站实现诚信经营,挽回消费者信任
在加油站,您是否也曾有过一丝疑虑:“我付了50升油的钱,油箱真的加满了50升吗?”这并非空穴来风。近年来,部分加油站通过“阴阳电脑”、作弊软件等高科技手段偷油偷税的行为屡被曝光,不仅让消费者蒙受经济损失,更严重侵蚀了行业的公信力。面对这一行业顽疾,监管部门也是头疼不已。某地区产品质量检验研究院的工作人员就选择引入了安企...
安全+智造双升级!江阴*电子有限公司携手安企神开启企业防护新时代!
江阴*电子有限公司成立于1989年,是一家电子元器件集成设计和生产服务的领先供应商。产品应用包括数据采集、计算机外围设备和其他电子产品。还进入了汽车电子行业、航空航天行业、工业控制行业、医疗器械行业和消费电子行业,为客户提供更广泛的高附加值产品和服务。随着科技产业的快速发展和市场需求的增加,现已成功转型为一家提供完整解...
聚焦核心数据安全:山东卫禾*股份有限公司携手安企神软件构建防泄密屏障!
项目背景山东卫禾*股份有限公司于2015年注册成立,公司拥有总资产1.5亿元,公司具有齿轮检测中心、三坐标测量仪、全谱直读光谱仪等关键研发设备。运用UGNX7.5、MASTA5.4等研发软件进行研发,具有强大的技术研发能力,拥有31项专利,坚持产学研结合,设有山东卫禾*技术研究院,并不断加强研发平台建设,打造创新型企业...
当青岛*测控技术有限公司遇上安企神,测控技术数据安全将迎来哪些新变化?
海*测控技术有限公司是海*微电子有限公司100%控股子公司,是由青岛市政府、山东省政府及行业领军企业共同出资成立的第三方检测平台。旨在集成电路可靠性验证及测试分析领域打造国内一流集成电路检测、分析、设计开发及技术解决方案等集成电路产业共性技术服务平台。海*以海洋装备和高端设备集成电路可靠性验证和测试分析为特色,主要为海...
"聚势谋远:重庆*医药集团与安企神达成战略合作,探索医药+科技融合发展新路径!
重庆*医药集团有限公司成立于2017年8月,是在重庆市*区医药(集团)有限责任公司基础上组建成立的大型医药产业企业。是重庆*经济技术开发(集团)有限公司控股的混合所有制企业和市级重点项目三峡国际健康产业园投资单位,位列全国百强医药流通企业。公司下辖重庆*制药有限公司、*医药科技重庆有限公司、重庆*肿瘤医院等十余家子公司...