您的位置:首页 > 其它

几种常用加密方式简要分析及建议

2016-05-17 09:17 351 查看
原始字符串:

{

    "at": "2486",

    "pwd": "96E79218965EB72C92A549DD5A330112",

    "vc": "147514",

    "v": "3.0"

}

加密算法:
AES,DES,RC4,Rabbit,TripleDes   密码:pppppxxxxxx

以AES为例:

正确的目的值:

            U2FsdGVkX19BZNXyLmcVSpM6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            Qb1wm3vmc4blW0VlmQIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            6Wh7isYYjRLvaQ/skECthA==

逆向解密验证:

1、正确的目的值解密:正确。

2、从尾部去除一部分解密:

            U2FsdGVkX19BZNXyLmcVSpM6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            Qb1wm3vmc4blW0VlmQIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            (去除部分:6Wh7isYYjRLvaQ/skECthA== :去除部分 )

        结果:

            {

                "at": "2486",

                "pwd": "96E79218965EB72C92A549DD5A330112",

                "vc": "147514",

                "v"

                

3、修改尾部:

        修改最后一个尾部:

            U2FsdGVkX19BZNXyLmcVSpM6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            Qb1wm3vmc4blW0VlmQIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            (6Wh7isYYjRLvaQ/skECthA== 修改为:6Wh7isYYjRLvaQ/skECthA=X )

        结果:

            {

                "at": "2486",

                "pwd": "96E79218965EB72C92A549DD5A330112",

                "vc": "147514",

                "v": "3.0"

            }

            

        修改最后2个尾部:

            U2FsdGVkX19BZNXyLmcVSpM6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            Qb1wm3vmc4blW0VlmQIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            (6Wh7isYYjRLvaQ/skECthA== 修改为:6Wh7isYYjRLvaQ/skECthAXX )

        结果:

            {

                "at": "2486",

                "pwd": "96E79218965EB72C92A549DD5A330112",

                "vc": "147514",

                "v

                

4、尾部增加字符:

            U2FsdGVkX19BZNXyLmcVSpM6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            Qb1wm3vmc4blW0VlmQIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            6Wh7isYYjRLvaQ/skECthA==w11111111111

            

        结果:

            {

                "at": "2486",

                "pwd": "96E79218965EB72C92A549DD5A330112",

                "vc": "147514",

                "v": "3.0"

            }

                

5、从头部去除一部分解密:

            (去除部分:U2FsdGVkX19BZNXyLmcVSp:去除部分 )M6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            Qb1wm3vmc4blW0VlmQIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            6Wh7isYYjRLvaQ/skECthA==

        结果:

            无

6、从中间去除一部分解密:

            U2FsdGVkX19BZNXyLmcVSpM6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            (去除部分:Qb1wm3vmc4blW0Vlm :去除部分 )QIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            6Wh7isYYjRLvaQ/skECthA==

        结果:

            无

7、修改中间部分:

            U2FsdGVkX19BZNXyLmcVSpM6OWxWP2V/TBm9+MICBJmwnr5RveOkF5VwMY+cdNjo

            (Qb1wm3vmc4blW0Vlm :修改为:Xb1wm3vmc4blW0Vln)QIW9jnHJgHxu4PCiZIUxvb89+i/FrcZC3p/zK86eaebRlyG

            CxGEa76s1Kq5YDNlkjRDNqXpvoz5yklu9sx8PRKB9Q9HyQjwf3zn9aA4oOB6nirV

            6Wh7isYYjRLvaQ/skECthA==

        结果:

            无

        扩展:逐个还原值,只要存在修改的字符,就无法解密。

                

BASE64:

密文:

            ewogICAgImFjY291bnQiOiAiQi0wMDI0ODYiLAogICAgInBhc3N3b3JkIjogIjk2

            RTc5MjE4OTY1RUI3MkM5MkE1NDlERDVBMzMwMTEyIiwKICAgICJ2Q29kZSI6ICIx

            NDc1MTQiLAogICAgImFwcFZlcnNpb24iOiAiMy4wIgp9

            

            

密文首尾加KEY,再加密        

            XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            ewogICAgImFjY291bnQiOiAiQi0wMDI0ODYiLAogICAgInBhc3N3b3JkIjogIjk2

            RTc5MjE4OTY1RUI3MkM5MkE1NDlERDVBMzMwMTEyIiwKICAgICJ2Q29kZSI6ICIx

            NDc1MTQiLAogICAgImFwcFZlcnNpb24iOiAiMy4wIgp9

            YYYYYYYYYYYYYYYYYYYYYYYYYYYYY

二次密文:

            CQkJWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKCQkJZXdvZ0lDQWdJbUZq

            WTI5MWJuUWlPaUFpUWkwd01ESTBPRFlpTEFvZ0lDQWdJbkJoYzNOM2IzSmtJam9n

            SWprMgoJCQlSVGM1TWpFNE9UWTFSVUkzTWtNNU1rRTFORGxFUkRWQk16TXdNVEV5

            SWl3S0lDQWdJQ0oyUTI5a1pTSTZJQ0l4CgkJCU5EYzFNVFFpTEFvZ0lDQWdJbUZ3

            Y0ZabGNuTnBiMjRpT2lBaU15NHdJZ3A5CgkJCVlZWVlZWVlZWVlZWVlZWVlZWVlZ

            WVlZWVlZWVlZ

            

            

            

3DES:

密码偏移量:12~!jd4232afle()9093

补码方式:PKCS5Padding

加密结果编码:16进制

结果:

8815ad9a6a5bc6987ef86434ad3bdc6c8f7ba3b7bc0a293c4e61ec92418ab4899c32151448b8929894347f473e795fa360163b87e8ae04c8325eb1a4f14b29354ac3fd980a4e3082d2741de3f927fb74cf96c906a9e92cdabc48c630b210105876c6c4c9848dcce4bb5b6507df6ec867d618297cec73c6fc723c51736565f198c3f29775b1d7ab26dc8a7201d4ca96c2a98df4d4d540c998f61c87ade9d9cd1a4c371c36ca60efbc385ebc7d9dd46500a23a5a52914b5e00fed718a98a33545c6c703eff06529b4b4d31715b8ab6c97c0f67b15f0ec4299b

    

    

    

    

加密结果编码:base64

结果:

iBWtmmpbxph++GQ0rTvcbI97o7e8Cik8TmHskkGKtImcMhUUSLiSmJQ0f0c+eV+jYBY7h+iuBMgyXrGk8UspNUrD/ZgKTjCC0nQd4/kn+3TPlskGqeks2rxIxjCyEBBYdsbEyYSNzOS7W2UH327IZ9YYKXzsc8b8cjxRc2Vl8ZjD8pd1sderJtyKcgHUypbCqY301NVAyZj2HIet6dnNGkw3HDbKYO+8OF68fZ3UZQCiOlpSkUteAP7XGKmKM1RcbHA+/wZSm0tNMXFbirbJfA9nsV8OxCmb

验证:

1、首字母变更:

(i 变更后的字符为:o)BWtmmpbxph++GQ0rTvcbI97o7e8Cik8TmHskkGKtImcMhUUSLiSmJQ0f0c+eV+jYBY7h+iuBMgyXrGk8UspNUrD/ZgKTjCC0nQd4/kn+3TPlskGqeks2rxIxjCyEBBYdsbEyYSNzOS7W2UH327IZ9YYKXzsc8b8cjxRc2Vl8ZjD8pd1sderJtyKcgHUypbCqY301NVAyZj2HIet6dnNGkw3HDbKYO+8OF68fZ3UZQCiOlpSkUteAP7XGKmKM1RcbHA+/wZSm0tNMXFbirbJfA9nsV8OxCmb

    解密:

         D�d����Yuot;a": "2486",

        "pwd": "96E79218965EB72C92A549DD5A330112",

        "vc": "147514",

        "v": "3.0"

        }

2、首字母变更:

(iB 变更后的字符为:oo)BWtmmpbxph++GQ0rTvcbI97o7e8Cik8TmHskkGKtImcMhUUSLiSmJQ0f0c+eV+jYBY7h+iuBMgyXrGk8UspNUrD/ZgKTjCC0nQd4/kn+3TPlskGqeks2rxIxjCyEBBYdsbEyYSNzOS7W2UH327IZ9YYKXzsc8b8cjxRc2Vl8ZjD8pd1sderJtyKcgHUypbCqY301NVAyZj2HIet6dnNGkw3HDbKYO+8OF68fZ3UZQCiOlpSkUteAP7XGKmKM1RcbHA+/wZSm0tNMXFbirbJfA9nsV8OxCmb

    解密:

         &�]�M0[�ot;a": "2486",

        "pwd": "96E79218965EB72C92A549DD5A330112",

        "vc": "147514",

        "v": "3.0"

        }

3、更改前部的一个字符:

iBW(t 变更后的字符为:o)mmpbxph++GQ0rTvcbI97o7e8Cik8TmHskkGKtImcMhUUSLiSmJQ0f0c+eV+jYBY7h+iuBMgyXrGk8UspNUrD/ZgKTjCC0nQd4/kn+3TPlskGqeks2rxIxjCyEBBYdsbEyYSNzOS7W2UH327IZ9YYKXzsc8b8cjxRc2Vl8ZjD8pd1sderJtyKcgHUypbCqY301NVAyZj2HIet6dnNGkw3HDbKYO+8OF68fZ3UZQCiOlpSkUteAP7XGKmKM1RcbHA+/wZSm0tNMXFbirbJfA9nsV8OxCmb

    解密:

         [zt�۲k�qujt;a": "2486",

        "pwd": "96E79218965EB72C92A549DD5A330112",

        "vc": "147514",

        "v": "3.0"

        }

    总字符数量不变的情况下,更改字符后,其他未更改部分仍然可以解析出内容。

4、无论多一个还是少一个字符,均无法解析

        

        

        

        

        

        

        

总结密文分析:

1、一层的加密中,AES,DES,RC4,Rabbit,TripleDes 算法中对密文后部的增减和更改 均可以正确的解析未变动部分。但是DES和TripleDes 两种加密算法 尾部命令的变更将会影响更多正确部分的内容值。对前部分的变更都将取不到值。

2、一层加密算法3DES 对密文内容的更改,未做更改部分仍然可以解析出内容,当对整个字符串长度来说多或者少字符的时候,均无法解析。

解决方案:

1、做两次加密;

2、使用非对称方式;

3、加密规则中增加可破解端的密码串叠加,例如:AES,DES,RC4,Rabbit,TripleDes 算法中对密文后部的增减和更改 均可以正确的解析未变动部分,那么AES密文前部分在叠加随机和约定要的其他AES密文的后部分。

4、对公钥进行排序和规则算法;

5、增加时间戳。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: