首页
社区
课程
招聘
关于 加密的问题...大神来..高手来
发表于: 2015-12-19 21:07 6015

关于 加密的问题...大神来..高手来

2015-12-19 21:07
6015
else {
            v0 = v0.toLowerCase();
            int v2 = v0.length() / 2;
            byte[] v3 = new byte[v2];
            int v4;
            for(v4 = 0; v4 < v2; ++v4) {

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 2015
活跃值: (902)
能力值: ( LV12,RANK:1000 )
在线值:
发帖
回帖
粉丝
2
很多高手都简单的回答了一下,这里我给个详细的。
#-*- coding:utf-8 -*-
from Crypto.Cipher import AES

def decrypt(enc,C_k):
    key=C_k
    while len(key)<32: key+='0'
    key=unicode(key,'utf-8').encode('utf-8')
    enc=enc.decode('hex')
    cipher = AES.new(key, AES.MODE_ECB)
    txt=cipher.decrypt(enc)
    phone=txt[:-ord(txt[-1])]
    phone=phone.decode('utf-8')
    return phone
           
def encrypt(phone,C_k):  
    key=C_k
    while len(key)<32: key+='0'
    key=unicode(key,'utf-8').encode('utf-8')
    p=unicode(phone,'utf-8').encode('utf-8')
    padnum=AES.block_size-len(p)
    p+=chr(padnum)*padnum
    cipher = AES.new(key, AES.MODE_ECB)
    enc=cipher.encrypt(p)
    return enc.encode('hex')     

C_k='sdtyffdftesfyfdw'
enc=encrypt('13249582075', C_k)     
print  enc
print  decrypt(enc, C_k)

'''
输出结果:
9613613dfc2eb43aee0f5df79f3c1d4e
13249582075
'''
2015-12-20 12:24
0
雪    币: 1
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
谢谢你的回答
上传的附件:
2015-12-20 16:35
0
雪    币: 206
活跃值: (840)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
[QUOTE=青岛;1407582]谢谢你的回答 大神 运行后显示


希望 楼上 大神 帮我调试一下 我是用命令提示符运行的 java 环境已经配置 还是需要其他软件运行 还是 我运行有什么问题吗  纯Java小白啊  再次感谢[/QUOTE]

python脚本
2015-12-21 10:14
0
雪    币: 1
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谢谢了、、、
上传的附件:
2015-12-21 16:33
0
雪    币: 216
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
[QUOTE=青岛;1407778]楼上大神 帮我看看运行哪里有问题 还是不能运行 谢谢了




楼上大神 帮我看看运行哪里有问题 还是不能运行 谢谢了[/QUOTE]

明显提示少Crypto.Cipher模块啊
2015-12-22 11:56
0
雪    币: 446
活跃值: (758)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
7
jce_policy
2015-12-22 12:53
0
雪    币: 1
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8


楼上大神 运行 出错 帮看看 谢谢了
上传的附件:
2015-12-22 13:57
0
雪    币: 446
活跃值: (758)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
9
[QUOTE=青岛;1407933]

楼上大神 运行 出错 帮看看 谢谢了[/QUOTE]

电脑上使用要替换jce_policy,JDK_HOME\jre\lib\security,下面是jce_policy下载地址

jdk1.5:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-plat-419418.html#jce_policy-1.5.0-oth-JPR
jdk1.6:http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html
jdk1.7:http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html
jdk1.8:http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html

下载相对应的jce_policy替换后就可以了
2015-12-22 13:59
0
雪    币: 446
活跃值: (758)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
10
[QUOTE=青岛;1407933]

楼上大神 运行 出错 帮看看 谢谢了[/QUOTE]

看运行图上的错误,你应该是下载错了,签名不对

java -version

查看JDK版本后再下载
2015-12-22 14:05
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
我运行代码 怎么会这样

G:\>java AES
javax.crypto.spec.SecretKeySpec@10188
java.security.InvalidKeyException: Illegal key size or default parameters
        at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1021)
        at javax.crypto.Cipher.implInit(Cipher.java:796)
        at javax.crypto.Cipher.chooseProvider(Cipher.java:859)
        at javax.crypto.Cipher.init(Cipher.java:1229)
        at javax.crypto.Cipher.init(Cipher.java:1166)
        at AES.encrypt(AES.java:36)
        at AES.encrypt(AES.java:51)
        at AES.main(AES.java:112)
Exception in thread "main" java.lang.NullPointerException
        at AES.byte2hex(AES.java:86)
        at AES.encrypt(AES.java:51)
        at AES.main(AES.java:112)
2015-12-23 23:01
0
雪    币: 1
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
大神 我调试成功   我现在把解密的 部分改了下  运行出错 比如 比手机号长的 邮箱 加密 就出错  大神 帮我看看应该怎么修改  就是解密的地方直接添加要解密的内容587676AA1B91FA67085B80C91FF7F904   不是从 加密传递


大神 比如 比手机号长的邮箱加密就出错   帮我看看应该怎么修改 谢谢了
上传的附件:
2015-12-25 18:14
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
楼主给下加密解密代码啊,
2015-12-25 20:26
0
游客
登录 | 注册 方可回帖
返回
//