`
Huaqingfly
  • 浏览: 57302 次
社区版块
存档分类
最新评论

一个非常简单的私有加密算法

阅读更多


public class ZYGEncrypt {
    private static final byte[] enkeystore = {
            0x08, 0x02, 0x0b, 0x0c, 0x01, 0x0a, 0x00, 0x0d, 0x07, 0x03, 0x0e,
            0x05, 0x0f, 0x06, 0x04, 0x09
        };
    private static final byte[] dekeystore = {
            0x06, 0x04, 0x01, 0x09, 0x0e, 0x0b, 0x0d, 0x08, 0x00, 0x0f, 0x05,
            0x02, 0x03, 0x07, 0x0a, 0x0c
        };

    public static byte[] encode(byte[] data) {
        byte[] result = new byte[data.length];

        for (int i = 0; i < data.length; i++) {
            result[i] += (enkeystore[(data[i] >>> 4) & 0x0F] << 4);
            result[i] += (enkeystore[data[i] & 0x0F]);
        }

        return result;
    }

    public static byte[] decode(byte[] data) {
        byte[] result = new byte[data.length];

        for (int i = 0; i < data.length; i++) {
            result[i] += (dekeystore[(data[i] >>> 4) & 0x0F] << 4);
            result[i] += (dekeystore[data[i] & 0x0F]);
        }

        return result;
    }

    public static void main(String[] args) {
        String data = "1";
        byte[] databyte = ZYGEncrypt.encode(data.getBytes());
        byte[] resultdata = ZYGEncrypt.decode(databyte);
        System.out.println(data);
        System.out.println(new String(resultdata));
    }

分享到:
评论

相关推荐

    DES加密算法c#版本

    DES 加密算法 C# 版本 DES(Data Encryption ...这个实现提供了一个简单的 DES 加密算法 C# 版本,可以方便地在 C# 应用程序中使用。但是,在实际应用中,需要注意 DES 的安全性问题,并选择更安全的加密算法。

    JAVA上加密算法的实现用例.doc

    以下是一个简单的MD5摘要计算示例: ```java import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD5Example { public static void main(String[] args) { try {...

    DES.rar_DES加密_des_des加密 c++_des加密算法 C++_des加密算法c

    在"实验1"中,我们可以看到一个简单的DES加密流程实现,包括初始置换、轮函数、逆初始置换等关键步骤。初始置换是为了打乱输入数据的顺序,使得加密过程更难以破解。轮函数是DES的核心,它使用子密钥与数据进行异或...

    C# AES加密算法

    - `IV`(Initialization Vector,初始化向量)同样是一个固定的字节数组,用于增强加密过程的安全性,防止相同的明文在相同的密钥下产生相同的密文,从而提高加密算法的健壮性。 #### 2. 加密方法 `AESEncrypt` - ...

    300种加密解密算法_300种加密解密算法_300_

    非对称加密使用一对密钥,一个公开,一个私有,公开密钥用于加密,私有密钥用于解密,确保了安全性。这种算法在网络安全通信中广泛使用,如HTTPS协议。 4. **哈希函数**:如MD5(Message-Digest Algorithm 5)和SHA...

    一类简单的数据加密方法.rar_vb.net 加密_加密_加密简单_程序加密_简单数据加密

    标题中提到的"一类简单的数据加密方法.rar_vb.net 加密_加密_加密简单_程序加密_简单数据加密"是一个使用VB.NET实现的数据加密解决方案,它提供了三种不同的加密策略:简单加密、随机码加密和用户名加密。...

    CRC32_Class.rar_CRC32;加密算法类库

    在本文中,我们将深入探讨CRC32的基本原理、应用以及如何在C++中实现一个自封装的加密算法类库。 CRC32的工作原理基于多项式除法,它可以被视为一种简单的校验和计算方法。在发送数据时,发送方通过特定的CRC32算法...

    C#实现简单的RSA非对称加密算法示例

    RSA非对称加密算法是公钥密码体制中的一种,使用了一对密钥,一个是公开的公钥,另一个是私有的私钥。公钥用于加密,私钥用于解密。RSA算法的安全性基于大数因子分解的难度和离散对数问题的难度。 在C#中实现RSA...

    RSA加密示例

    本文旨在通过一个简单的RSA加密示例,来帮助读者快速理解并掌握RSA加密的基本原理和操作过程。 首先,我们必须清楚RSA算法的核心是公钥和私钥对的生成。这一过程涉及到两个大质数的选择以及相关数学运算,关键在于...

    简单的加密软件

    非对称加密则使用一对密钥,一个公开的公钥用于加密,另一个私有的私钥用于解密。RSA、ECC(Elliptic Curve Cryptography)和DSA(Digital Signature Algorithm)是常见的非对称加密算法。非对称加密安全性较高,但...

    md5加密算法的c++代码实现

    根据给定的文件信息,我们可以总结出以下...MD5算法虽然简单易用,但在安全性方面存在一定的局限性,因此在实际应用中需要根据场景选择合适的加密算法。对于安全性要求较高的场景,建议使用SHA-256等更安全的哈希算法。

    对称加密和非对称加密介绍和区别

    - **密钥交换问题**:要求提供一条安全的渠道使通讯双方在首次通讯时协商一个共同的密钥。直接面对面协商通常是不现实且难以实施的。 - **密钥管理问题**:随着合作伙伴数量的增加,密钥的数量也随之增加,导致...

    300种加密解密算法

    它使用一对密钥,一个公开,一个私有,公钥用于加密,私钥用于解密。这种方式解决了密钥分发问题,但计算复杂度较高。 4. 哈希函数:不是加密,但与数据完整性密切相关,如MD5、SHA-1和SHA-256。它们将任意长度的...

    go语言封装的各种尖端加密和非尖端加密,可以直接使用,包括3重DES,AES的CBC和CTR模式,还有RSA非尖端加密,ECC椭圆形的加密和数字签名.zip

    但是可以参考使用),三重DES的加密解密(可以使用),AES的CBC模式和CTR模式(简单)加密中常用的加密算法),非加密加密R SA的加密解密(比较常用的非加密算法),椭圆曲线加密算法(后面更新),还有哈希函数sha...

    公钥加密/流加密/摘要 算法

    HMAC(Hash-based Message Authentication Code)是基于哈希函数的一种消息认证码,它结合了密钥和信息,生成一个短的固定长度的摘要,用于验证数据的完整性和来源的真实性。 在实际应用中,这些算法常常组合使用以...

    一个数据传输加密方案的设计与实现

    加密方案包括两大部分:一是基于综合加密算法的数据加密体系;二是相应的密钥管理体系。本文首先概述了密码学的基本概念,随后详细介绍了对称密钥加密、非对称密钥加密以及综合加密技术(混合密码体制),并在此基础...

    java编写的加密解密工具,有对称加密和非对称加密

    加密解密工具包通常会提供一个友好的接口,使得开发者可以方便地调用这些加密算法。例如,可能有一个`encrypt(String plainText, String key)`方法用于加密明文,一个`decrypt(String cipherText, String key)`方法...

    私人文件加密(可以对私人文件进行简单的加密)

    文件加密是通过一种称为加密算法的过程,将原始数据(明文)转化为看似随机的、无法理解的形式(密文)。这通常由一个密钥来控制,只有拥有正确密钥的人才能将密文还原为原始内容。常见的加密算法有AES(高级加密...

    非对称加密

    在非对称加密中,每一对密钥包括一个公开密钥和一个私有密钥。公开密钥可以安全地分发给其他人,用于加密信息;而私有密钥则必须被妥善保管,只有持有者才能使用它来解密信息。这意味着,如果使用公开密钥加密的信息...

Global site tag (gtag.js) - Google Analytics