14、网络安全技术视角解析

网络安全技术视角解析

1. 密码学基础算法

1.1 质数算法与信息加密

取一个大数除以“木星数”的余数,能得到原始信息。例如,当前已知最大质数为 (2^{82,589,933} - 1),有 24,862,048 位,使用这么大的质数进行加密计算量较大。目前常用的 2048 位加密,使用的数字长度略超 600 位,比“木星数”大一点。

要得到 43 和 211 这两个数,需用到欧拉函数。对于两个质数 (p)、(q) 的乘积 (N = p * q),小于 (N) 的质数个数 (T = (p - 1)(q - 1))。如 (p = 19),(q = 29),则 (N = 551),(T = 504)。

选取 43 这个数(有一定限制条件),再找一个数与 43 相乘后对 504 取余结果为 1,这个数是 211。假设 Fred 要给 Fiona 发消息 63(文本块转换的数字),他用 43(Fiona 的公钥)加密,Fiona 用 211(她的私钥)解密得到原始消息。以下是实现此过程的 Python 代码:

#!/usr/bin/python
FredMessage = 63**43  # Raise arbitrary number (63) to power of 43
print FredMessage
# This is a huge number
# Fiona’s public key, 43, encrypting the message 63
FionaDecode = FredMessage**211  # Fiona her private key, 211
p
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值