明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1995|回复: 5

[源码] 用素数的原根对程序加密

  [复制链接]
发表于 2019-12-26 23:00:34 | 显示全部楼层 |阅读模式
本帖最后由 ashleytgg 于 2019-12-26 23:00 编辑

     我对 http://bbs.mjtd.com/forum.php?mo ... 414&fromuid=7316343 这个帖子中 的内容稍微修改了下。我修改的内容 ,是用素数的原根 对一个字符串进行加密。
   比如素数为239,原根为7, 7是模239的原根时,7^0,7^1,……7^(239-1)构成模 239的简化剩余系  再次声明, 本程序的大部分都是从别人那里引用来的,我只是改了一下。
  1. ;; 求7 的222次方摸 239 的余数
  2. (defun mode_N (Base_number exponent modulo / y)
  3.   (setq y 1)
  4.   (repeat exponent
  5.     (setq y (* y Base_number)
  6.     y (rem y modulo)
  7.     )
  8.   )
  9.   y
  10. )
  11. ;;  ( mode_N  7 222 239)   

  12. ;| 制造一个函数 对序列号 进行混淆  用素数239 的原根7 进行重排
  13.   (setq str (wdy_mac )  ) 返回值"60:36:DD:6D:95:75"
  14.   输入参数 : prime_number 素数,
  15.             该素数的原根 Prime_primitive_root
  16.     (setq  prime_number  239  Prime_primitive_root 7)   
  17. |;
  18. (defun num_Confused (str     prime_number   Prime_primitive_root
  19.          /       str2     code
  20.          lennum     lennum2   strlst2
  21.          strlst
  22.         )
  23.   (setq  strlst  (vl-string->list str)
  24.   lennum  (length strlst)
  25.   str2
  26.     "i love you ,china ,i love you ,my son
  27.    ,i love you my wife ,you are all my passion"
  28.   strlst2  (vl-string->list str2)
  29.   strlst2  (append strlst2 strlst)
  30.   lennum2  (length strlst2)
  31.   )
  32.   ;; 用strlst2 把strlst 元素个数 补成 prime_number 239个
  33.   (setq i 0)
  34.   (repeat (- prime_number lennum)
  35.     (setq strlst (append strlst
  36.        (list (nth (rem i lennum2) strlst2))
  37.      )
  38.     i   (1+ i)
  39.     )
  40.   )
  41.   ;; 用 prime_number239 的原根7 对  strlst  进行重排
  42.   (setq  i    0
  43.   code nil
  44.   )
  45.   ;; (mode_N 7 i 239) 表示: 求 7^i (mode 239)  
  46.   (repeat (length strlst)
  47.     (setq code (cons
  48.      (nth (mode_N Prime_primitive_root i prime_number)
  49.           strlst
  50.      )
  51.      code
  52.          )
  53.     i    (1+ i)
  54.     )
  55.   )
  56.   (vl-list->string (reverse code))
  57. )
  58. ;;    (LM:MD5 (vl-string->list  (num_Confused   str  239 7 )  ) )  



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2019-12-27 08:39:41 | 显示全部楼层
感谢分享啊   
发表于 2020-8-30 07:27:29 | 显示全部楼层
大佬,厉害啊
发表于 2020-8-30 08:35:46 | 显示全部楼层
本帖最后由 zj20190405 于 2020-8-30 13:47 编辑

非常感谢非常感谢非常感谢
发表于 2020-8-30 13:25:31 | 显示全部楼层
本帖最后由 zj20190405 于 2020-8-30 13:47 编辑

非常感谢非常感谢非常感谢
发表于 2020-9-2 08:14:58 | 显示全部楼层
大佬们,注册机无法编辑修改申请码,如何解决
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-18 15:42 , Processed in 0.161238 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表