提交网站给百度,增加wordpress插件,企业名称禁限用规则,东圃做网站的公司网络安全课相关知识#xff1a;
RSA预备知识 1.1 快速幂算法 顾名思义#xff0c;快速幂就是快速算底数的$n$次幂。其时间复杂度为${\rm{O(log n)}}$#xff0c;与朴素的$O\left( n \right)$相比#xff0c;效率有了极大的提高。具体可以参考百度百科#xff1a;快速幂。… 网络安全课相关知识
RSA预备知识 1.1 快速幂算法 顾名思义快速幂就是快速算底数的$n$次幂。其时间复杂度为${\rm{O(log n)}}$与朴素的$O\left( n \right)$相比效率有了极大的提高。具体可以参考百度百科快速幂。
1.2 扩展欧几里得算法 扩展欧几里得算法英语Extended Euclidean algorithm是欧几里得算法又叫辗转相除法的扩展。已知整数a、b扩展欧几里得算法可以在求得a、b的最大公约数的同时能找到整数x、y其中一个很可能是负数使它们满足贝祖等式
axbygcd(a,b). axbygcd(a,b). 如果$a$是负数可以把问题转化成 $\left| a \right|\left( { - x} \right){\rm{ }} {\rm{ }}by{\rm{ }} {\rm{ }}gcd\left( {\left| a \right|,b} \right)$$\left| a \right|$为a的绝对值然后令$x\prime {\rm{ }} {\rm{ }}\left( { - x} \right)$。具体可以参考维基百科扩展欧几里得。
1.3 米勒-拉宾素性检验算法 要测试${\rm{N}}$是否为素数首先将${\rm{N - 1}}$分解为${2^s}d$。在每次测试开始时先随机选一个介于$[1,N - 1]$的整数$a$之后如果对所有的$r \in [0,s - 1]$若${a^d}\bmod N \ne 1$且${a^{{2^r}d}}\bmod N \ne - 1$则$N$是合数。否则$N$有$3/4$的概率为素数。 构成该算法的思想是如果${a^d} \ne 1\left( {{\rm{mod n}}} \right)$以及$n 1{\rm{ }} {\rm{ }}{2^s}d$是素数则值序列
admodn,a2dmodn,a4dmodn,…,a2sdmodn admodn,a2dmodn,a4dmodn,…,a2sdmodn 将以$1$结束而且在头一个$1$的前边的值将是$n-1$(当$p$是素数时对于${y^2} \equiv 1\left( {mod p} \right)$仅有的解是$y \equiv \pm 1\left( {mod p} \right)$因为$\left( {y 1} \right)\left( {y - 1} \right)$必须是$p$的倍数)。注意如果在该序列中出现了$n-1$则该序列中的下一个值一定是$1$,因为${\left( {n-1} \right)^2} \equiv {n^2}-2n 1 \equiv 1\left( {mod n} \right)$。具体可以参考维基百科米勒-拉宾素性检验。
一、RSA加密简介 RSA加密是一种非对称加密。可以在不直接传递密钥的情况下完成解密。这能够确保信息的安全性避免了直接传递密钥所造成的被破解的风险。是由一对密钥来进行加解密的过程分别称为公钥和私钥。两者之间有数学相关该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。通常个人保存私钥公钥是公开的可能同时多人持有。 二、RSA加密、签名区别 加密和签名都是为了安全性考虑但略有不同。常有人问加密和签名是用私钥还是公钥其实都是对加密和签名的作用有所混淆。简单的说加密是为了防止信息被泄露而签名是为了防止信息被篡改。这里举2个例子说明。
第一个场景战场上B要给A传递一条消息内容为某一指令。
RSA的加密过程如下
1A生成一对密钥公钥和私钥私钥不公开A自己保留。公钥为公开的任何人可以获取。
2A传递自己的公钥给BB用A的公钥对消息进行加密。
3A接收到B加密的消息利用A自己的私钥对消息进行解密。 在这个过程中只有2次传递过程第一次是A传递公钥给B第二次是B传递加密消息给A即使都被敌方截获也没有危险性因为只有A的私钥才能对消息进行解密防止了消息内容的泄露。 第二个场景A收到B发的消息后需要进行回复“收到”。
RSA签名的过程如下
1A生成一对密钥公钥和私钥私钥不公开A自己保留。公钥为公开的任何人可以获取。
2A用自己的私钥对消息加签形成签名并将加签的消息和消息本身一起传递给B。
3B收到消息后在获取A的公钥进行验签如果验签出来的内容与消息本身一致证明消息是A回复的。 在这个过程中只有2次传递过程第一次是A传递加签的消息和消息本身给B第二次是B获取A的公钥即使都被敌方截获也没有危险性因为只有A的私钥才能对消息进行签名即使知道了消息内容也无法伪造带签名的回复给B防止了消息内容的篡改。 但是综合两个场景你会发现第一个场景虽然被截获的消息没有泄露但是可以利用截获的公钥将假指令进行加密然后传递给A。第二个场景虽然截获的消息不能被篡改但是消息的内容可以利用公钥验签来获得并不能防止泄露。所以在实际应用中要根据情况使用也可以同时使用加密和签名比如A和B都有一套自己的公钥和私钥当A要给B发送消息时先用B的公钥对消息加密再对加密的消息使用A的私钥加签名达到既不泄露也不被篡改更能保证消息的安全性。 网络安全学习路线
对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。 同时每个成长路线对应的板块都有配套的视频提供 需要网络安全学习路线和视频教程的可以在评论区留言哦~
最后 如果你确实想自学的话我可以把我自己整理收藏的这些教程分享给你里面不仅有web安全还有渗透测试等等内容包含电子书、面试题、pdf文档、视频以及相关的课件笔记我都已经学过了都可以免费分享给大家 给小伙伴们的意见是想清楚自学网络安全没有捷径相比而言系统的网络安全是最节省成本的方式因为能够帮你节省大量的时间和精力成本。坚持住既然已经走到这条路上虽然前途看似困难重重只要咬牙坚持最终会收到你想要的效果。 黑客工具SRC技术文档PDF书籍web安全等可分享 结语
网络安全产业就像一个江湖各色人等聚集。相对于欧美国家基础扎实懂加密、会防护、能挖洞、擅工程的众多名门正派我国的人才更多的属于旁门左道很多白帽子可能会不服气因此在未来的人才培养和建设上需要调整结构鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”才能解人才之渴真正的为社会全面互联网化提供安全保障。 特别声明 此教程为纯技术分享本教程的目的决不是为那些怀有不良动机的人提供及技术支持也不承担因为技术被滥用所产生的连带责任本教程的目的在于最大限度地唤醒大家对网络安全的重视并采取相应的安全措施从而减少由网络安全而带来的经济损失