记录一个RSA加密js逆向

network调试就不说了吧 pwd加密参数

搜索pwd参数定位逆向 可以看到有很多关键词 但是我们细心的朋友会发现加密函数关键字 encrypte

打上断点 调试 发现在断点处停止了 并且框选函数发现了一串加密值 虽然不一样但是大概率是这个 并且没你每次放置移开都会刷新 所以如果这个就是pwd加密值 那就可以断定pwd加密是不固定的

一点点步进 会发现我们的加密函数是在一个RSA.js的文件下的 我们同时也可以看到encryptedString函数里面传入了两个参数 一个是RSAKeyPair函数对象一个是我们的明文密码

往上翻一番可以看到RSAKeyPair这个函数 并且她传入了三个值n,t,i

那我们就去寻找这个值 断点调试

然后你断点之后进行点击登录 发现 根本不断 那说明了什么 说明根本没调用

那怎么办 刷新一下网页 很有可能它之前就加载进来了 这个函数已经执行过了

果然 n,t,i我们都拿到了(我喜欢断点 有的时候断点不断我很烦 就附近狂断 停了就取消其它的)

你也可以从一开始的断点看

传入了一个key_to_encode这个就是RSAKeyPair的返回值 搜他!

好 那么我们现在进行js代码调试这个加密函数代码里面调用的函数太多了 我就直接复制RSA.js下面的所有代码吧(主要没多少) 不然一个个补是真烦人

这里大家都知道传入了n和t 我们调用传入t我们要加密的就行了

n又是RSAKeyPair对象 我们直接写在encryptedString函数下调用赋值就行了

运行看看(格式化-加载-计算表达式)

我们计算出来了 但是每次的值都是不同的

至此我们的揭秘之旅就结束啦!

注:RSAKeyPair函数的n,t,i还有一种获取方式 就是网页源代码 有的时候加密参数找不到的话 也可以参考是不是在源代码下哦~

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,以下是一份使用 Python 实现 RSA 加密解密的示例代码: ``` import rsa # RSA加密 def rsa_encrypt(plaintext, pub_key): # 加密 ciphertext = rsa.encrypt(plaintext.encode(), pub_key) # 返回密文 return ciphertext # RSA解密 def rsa_decrypt(ciphertext, pri_key): # 解密 plaintext = rsa.decrypt(ciphertext, pri_key).decode() # 返回明文 return plaintext # 生成公钥、私钥 (pub_key, pri_key) = rsa.newkeys(512) # 待加密的明文 plaintext = "RSA encryption test" # 调用RSA加密函数,进行加密 ciphertext = rsa_encrypt(plaintext, pub_key) # 调用RSA解密函数,进行解密 decrypted_plaintext = rsa_decrypt(ciphertext, pri_key) # 输出结果 print("待加密的明文:", plaintext) print("加密后的密文:", ciphertext) print("解密后的明文:", decrypted_plaintext) ``` 注意:本代码仅供参考,实际使用中可能需要对代码进行一定的修改。 ### 回答2: RSA加密是一种非对称加密算法,通过生成一对公钥和私钥来实现加密和解密的过程。以下是一个Python实现RSA加密解密的示例代码: ```python import rsa # 生成RSA公私钥对 (pubkey, privkey) = rsa.newkeys(2048) # 明文 message = "Hello, World!" # 加密 crypto = rsa.encrypt(message.encode(), pubkey) # 解密 plain = rsa.decrypt(crypto, privkey).decode() print("加密后的密文:", crypto) print("解密后的明文:", plain) ``` 首先,我们导入了Pythonrsa模块。然后,使用`rsa.newkeys(2048)`生成了一个2048位的RSA公私钥对。接下来,我们定义了一个明文字符串`message`。 使用`rsa.encrypt(message.encode(), pubkey)`进行加密。我们将明文进行编码并调用`rsa.encrypt()`方法来加密数据,其中`pubkey`是生成的公钥。 使用`rsa.decrypt(crypto, privkey).decode()`进行解密。我们调用`rsa.decrypt()`方法来解密加密后的数据,其中`crypto`是加密后的密文,`privkey`是生成的私钥。最后,我们将解密后的数据进行解码并打印出来。 以上代码简要演示了Python如何使用RSA加密解密数据。请注意,此示例仅用于介绍RSA加密的基本原理,实际应用中还需要进行更多的安全性验证和异常处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值