美文网首页java
密码学-札记

密码学-札记

作者: zhglance | 来源:发表于2020-07-25 22:55 被阅读0次

一、加密算法的选择:

1.1 对称加密:

不安全的加密算法:

a.DES系加密算法(DES/DESX/3DES/2TDEA )
DES(Data Encryption Standard) 是IBM开发的商业密码 ,基于Lucifer算法,1972年成为美国国家标准局NIST((National Institute of Standards and Technology)的加密标准; 3DES相当于是对每个数据块应用三次DES加密运算,Triple Data Encryption Algorithm,缩写为TDEA。

b.RC2/RC4 (Ron's Code)
即Ron Rivest提出的加密算法,为RSA公司所有,是一种可变秘钥长度的加密算法,速度要比DES快很多,RSA一直拒绝公开RC2/RC4的加密细节,直到被人匿名公布了RC2/RC4的源代码。

c.TEA
据说鹅厂一直在使用,好像还对其进行了改进,网上也有很多TEA加密解密的源码,不过TEA已经被破解了,所以还是不使用为好。

d. base64伪加密
这个一定要严格禁止使用
这个一定要严格禁止使用
这个一定要严格禁止使用
base64不是真正的加密算法,只能算是一种伪加密。64(2的6次幂)代表64个可打印的字符(A~Z,a~z,0~9,+,-,对64个字符进行0~63进行编排),base64的原理是对数据中的24个bit话划分成4组,每组6个bit,然后在每组前加两个0构成8bit (值得范围是0~63),然后根据base64编码表进行替换为64个可打印字符之一,最后每组扩展为32bit。简单来说就是一个简单的字符映射替换,几乎不具有现代密码学上的安全性。

对称加密算法推荐【密码长度大于128bit】:
AES-GCM(Galois/Counter Mode);
AES-CTR(Counter,计算器模式);
AES-OFB(Output FeedBack,输出反馈模式)。

1.2 非对称加密:

a.RSA:
RSA是目前主流使用的非对称加密算法是(Rivest, Shamir, Adleman, 即三位发明者的名字的首字母) 三位科学家在Diffie(提出非对称加密的猜想)的启发下,组成一个小团体,耗费了一年的时间完成的,Rivest是实际的算法提出者,Shamir也是一个密码学大牛,教科书中会有很多地方提到他,但是在RSA的贡献上没有Rivest运气好,Adleman是数学家,主要验证Rivest, Shamir提出算法的有效性,三位凭借RSA的成果获得了2002年图灵奖。

b.DSA /ECDSA:
DSA(Digital Signature Algorithm)是美国国家标准局NIST于1991公布的签名算法,只具有数字签名功能,不具有加密功能。
ECDSA(Elliptic Curve Digital Signature Algorithm)即椭圆曲线数字签名算法,即ECC与DSA的结合。

b.背包加密算法
背包加密由Merkle-Hellman基于背包难题,提出的第一个公钥加密算法,不过仅仅两年后就被破解了。

非对称加密算法推荐:
RSA的密码长度大于3072bits;
DSA的密码长度大于3072bits;
ECDSA的大于256bits。

1.3 Hash算法:

**不安全的Hash算法:SHA0,SHA-1,MD2,MD4,MD5等;
推荐:SHA256,SHA-3

1.4 密码交换算法:

目前主流使用的非对称加密算法是D-H协议(Diffie-Hellman,两位发明人的首字母,猜想由Diffie提出(非对称加密的猜想也是由他提出),最后由Hellman提出具体算法,凭借D-H协议二位获得了2015年的图灵奖)和 ECD-H(Ellipse Curve Cryptography 椭圆曲线算法和D-H的结合

Diffie和Hellman(图片来自网络,如侵权请留言)

备注:据说Diffie已经全职加盟浙江大学

推荐:
D-H 的密码长度大于3072bits;
ECD-H大于256bits;

1.5 随机数:

C库或者java的random()都是伪随机数,一定要禁止用于安全用途。

推荐:OpenSSL,Java 的SecureRandom ,unix的dev/random,window的cryptGenRandom,以及中软的Random组件。

1.6 其他:

1.5.1 禁止使用SSL2.0(MD5,中间人攻击),SSL3.0(中间人攻击),TLS1.0(使用RC4加密),TLS1.1(使用MD5和SHA-1)

推荐: TLS1.2,TLS1.3

1.5.2 ssh禁止使用cbc模式,禁止使用sshv1,要使用v2及以上版本,

推荐: HMAC-SHA2消息认证算法,

相关文章

  • 密码学-札记

    一、加密算法的选择: 1.1 对称加密: 不安全的加密算法: a.DES系加密算法(DES/DESX/3DES/2...

  • [云南支教札记]目录

    云南支教札记(一)【启程】 云南支教札记(二)【印象】 云南支教札记(三)【霓裳】 云南支教札记(四)【秘境】 云...

  • 前后端数据传输安全——加密浅析

    加密 本文内容: 密码学起源 古典密码学 现代密码学 对称加密 非对称加密 数字签名 哈希 密码学起源: 在战争中...

  • 1.什么是密码学

    重点:密码学的主要功能及其含义现代密码学与信息安全的关系现代密码学的主要研究内容 1. 密码学定义 密码学是一个...

  • 关于区块链密码学

    什么是密码学 以下是密码学在维基百科中的解释: 密码学(英语:Cryptography)可分为古典密码学和现代密码...

  • 密码学基础知识

    密码学 推荐书籍 图解密码技术 结城浩 著 周自恒 译 密码学概览 密码学概览图密码学概览 消息的特性 机密...

  • iOS逆向攻防之密码学基础及RSA数学原理、Base64编码

    直接上密码学入门级知识部分,今天的内容如下: 一、密码学概述与发展历史 1、密码学的概述 2、密码学的主要发展历史...

  • IOS 逆向开发(一)密码学 RSA

    IOS 逆向开发(一)密码学 RSA 1. 密码学发展简介 密码学是指研究信息加密,破解密码的技术科学。密码学的起...

  • RSA加密

    一、密码学 密码学是指研究信息加密,破解密码的技术科学。密码学的起源可追溯到2000年前。而当今的密码学是以数学为...

  • 密码那些事儿|(二十八)战争对密码学的作用

    说完密码学对战争的作用,我们再来看看战争对密码学的影响。 在密码学的发展历史上,有这么一个规律 ——密码学总是在信...

网友评论

    本文标题:密码学-札记

    本文链接:https://www.haomeiwen.com/subject/nucmhktx.html