2010-09-15 81 views
1

如何根据此解码功能制作编码功能? 我得到了互联网上的解码功能的源代码,但我需要编码功能。如何根据此解码功能制作编码功能?

我的所有尝试都失败了,原来的编码器目前不可用。

(原始)代码:

byte Decode(byte EncodedByte) 
{ 
    EncodedByte ^= (byte)194; 
    EncodedByte = (byte)((EncodedByte << 4) | (EncodedByte >> 4)); 
    return EncodedByte; 
} 

回答

1

byte Encode(byte EncodedByte) 
{ 
    EncodedByte = (byte)((EncodedByte << 4) | (EncodedByte >> 4)); 
    EncodedByte ^= (byte)194; 
    return EncodedByte; 
} 
+0

我不知道这很容易。非常感谢你! – lesderid 2010-09-15 13:47:19

+4

可怜的参数选择名称。 – Rudu 2010-09-15 13:49:53

0

你为什么不使用C#正常的加密/解密功能?

Encrypt and decrypt a string

+0

我为什么?这段代码从C++转换而来,这种方式非常完美。另外,我不知道如何将其转换为“正常的加密/解密功能”。 – lesderid 2010-09-15 13:44:58

+1

这不是很有帮助 - 他可能会处理通过其他一些必须使用此方法的过程创建的数据。 – Rudu 2010-09-15 13:49:25

+0

的确,请参阅Scott的回答评论。 – lesderid 2010-09-15 13:51:58

4

就在餐巾纸编码的答案的一些快速回应该

byte Encode(byte DecodedByte) 
{ 
    DecodedByte = (byte)((DecodedByte << 4) | (DecodedByte >> 4)); 
    DecodedByte ^= (byte)194; 
    return DecodedByte; 
} 

此外,我与亚历克斯同意这是一个简单的加密方法。任何知道该算法的人都可以简单地解密您的消息。我不会依赖它来获取任何敏感信息,如果这是公开使用的代码,则某些国家/地区的法律规定数据必须具有某种形式的加密。如果我是针对数据泄露而起诉你的人的法官,我会称之为混淆技术,然后是加密技术。

+0

谢谢,Henrik是第一个。 +1。 – lesderid 2010-09-15 13:48:03

+1

想到了同样的问题 - 对所有可能的字节进行了单元测试,并成功运行(如果您有疑问的话)) – Rudu 2010-09-15 13:50:21

+1

Henrik和我发布了大约15秒的时间。如果我没有将EncodedBytes更改为解码字节,我本来是第一个; p – 2010-09-15 13:51:02