前言:
当前咱们对“异或加密很容易破解吗”大致比较关切,大家都需要剖析一些“异或加密很容易破解吗”的相关知识。那么小编也在网摘上收集了一些对于“异或加密很容易破解吗””的相关资讯,希望各位老铁们能喜欢,姐妹们快快来了解一下吧!游戏研发中常对网络中传输敏感信息数据做加密解密处理。异或密码(simple XOR cipher)是密码学中一种简单的加密算法,是指对信息进行异或操作来达到加密和解密目的。无论是原理还是操作性上,都不具备任何难度,所以在做一些简单的加密时,被广为采用。
异或运算(XOR)是一种计算机程序设计语言中很重要基于二进制的位运算,对提高程序可读性和运行效率具有重要实际价值。异或运算具有交换律、结合律、自反律、配对等常见性质,以广泛应用于奇偶性判别、纠错检验、网络编码、信息加密、图像处理等应用中。
异或密码是一种通过异或运算进行加密的算法。参与运算的两个值,如果两个相应bit位相同,则结果为0,否则为1。即:0^0 = 0 1^0 = 1 0^1 = 1 1^1 = 0 按位异或的3个特点:(1) 0^0=0,0^1=1 0异或任何数=任何数。(2) 1^0=1,1^1=0 1异或任何数=任何数取反。(3) 任何数异或自己=把自己置0
按位异或的几个常见用途:(1) 使某些特定的位翻转。(2) 实现两个值的交换,而不必使用临时变量。
JAVA实现异或加解密类:LLXORHelper.java
package com.core.helper; /** * 异或加密的工具类 * @author Thinker * */ public class LLXORHelper { /** 加密钥匙 */ private final static int XOR_KEY=100; /** * 加密 * @param buf * @param size */ public static void NFX_EnCode(byte[] buf,int size) { int tmpi; int conf; int tmpc; conf=XOR_KEY%255; conf=conf>=0?conf:-conf; for(tmpi=0;tmpi<size;tmpi++) { tmpc=buf[tmpi]; tmpc+=conf; if(tmpc>255) tmpc-=256; buf[tmpi]=(byte)(((byte)tmpc)^0xff); } } /** * 解密 * @param buf * @param size */ public static void NFX_DeCode(byte[] buf,int size) { int tmpi; int conf; int tmpc; conf=XOR_KEY%255; conf=conf>=0?conf:-conf; for(tmpi=0;tmpi<size;tmpi++) { tmpc=buf[tmpi]^0xff; tmpc=tmpc>=conf?tmpc-conf:256+tmpc-conf; buf[tmpi]=(byte)tmpc; } } }
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #异或加密很容易破解吗