RSA加密

RSA算法原理(1)阮一峰参考: http://www.ruanyifeng.com/blog/2013/06/rsa_algorithm_part_one.html
RSA算法原理(2)阮一峰参考: http://www.ruanyifeng.com/blog/2013/07/rsa_algorithm_part_two.html
扩展欧几里得Python实现 : http://www.cnblogs.com/7hat/p/3406494.html
Python调用C: https://www.cnblogs.com/lovephysics/p/7237227.html
gcc -o libpycall.so -shared -fPIC pycall.c

我自己写的加密算法,待完善.

#!/usr/bin/python
# -*- coding: utf-8 -*-
import random
p=61
q=53
n = p*q
Euler = (p-1)*(q-1)
# e = random.sample(range(1,Euler,1)
# e = random.randint(1,Euler)
e = 17

def extendedGCD1(a, b):
    # a*xi + b*yi = ri
    if b == 0:
        return (1, 0, a)
    (x, y, r) = extendedGCD1(b, a%b)
    tmp = x
    x = y
    y = tmp - (a/b) * y
    return (x, y, r)
    
x = int(extendedGCD1(e,Euler)[0])
y = int(extendedGCD1(e,Euler)[1])
print(x,y)

if x>y:
    d = x
else:
    d = y
    
public_key = [n,e]
private_key = [n,d]

print(public_key,private_key)

#m是要发送的信息
m = 65
def encrypt(m,e,n):
    return m**e % n
print("加密后的信息为:",encrypt(m,e,n))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 作为一个前端程序猿,下面这些站会让你眼前一亮。 amazeui框架组建丰富 http://amazeui.org...
    欧巴冰冰阅读 12,868评论 18 303
  • 这是去年12月在CSDN写的一篇加密算法文章 现在决定在简书写博客 移植过来方便复习再理解。 最近算法课老师要求小...
    icecrea阅读 5,138评论 1 1
  • 学校组织军训,导致放假特别迟。1月20日,西大学子终于军训结束,此时,已经是腊月二十三。对此,我只能表示“我怀疑我...
    蒋小志jxz阅读 3,975评论 2 2
  • 纵然我不可能是王子 但我也必须活的像一个战士 身为一个男人 我无法让自己过着女人一般的生活 健身对于我来说 锻炼的...
    开头空两格阅读 3,904评论 0 4
  • 喜欢发说说的我找到了一个新的软件――“简书”。为什么这么说呢?那就是每天的说说都赶上做微商的多了,所以空间朋友圈...
    YOU人生若只如初见阅读 1,352评论 0 2