Java安全之安全加密算法( 五 )

在代码中其实可以看到用到了x509EncodedKeySpec和pkcs8EncodedKeySpec的类 , 其实这两个类一个用于对私钥进行编码的 , 一个是对私钥进行编码 。
5 、结尾在安全中其实加密算法显得格外的重要 , 举个例子 , 比如说冰蝎 , 为什么就能过一些设备呢?其实分析过冰蝎的 , 或者是看过冰蝎作者大大的文章的应该会知道 , 冰蝎在流量传输中也是做了加密的 。 使用的是AES加密 。 首先是将客户端发送的命令转换成字节码 , 然后使用aes进行加密 , 然后在客户端也就是webshell获取密钥进行解密得到字节码 , 最后就是使用defineClass来动态加载字节码进行执行 。
但是在后面各大厂商的设备随着各大厂商设备的不断升级 , 冰蝎2还是被杀了 。 这是因为在冰蝎aes传输密钥的时候被识别出来了 。 那么我们如果再对该密钥进行更狠一点加密呢?虽然说也能实现 , 步骤繁琐一些 。 但是这还是会产生一些流量 。 在冰蝎3中的做法是去除了握手的过程 , 直接写死在Webshell中的字符串作为AES密钥解密流量包 。
后面打算基于冰蝎进行一个重写 , 并使用不同的算法来实现加密 。