在c#中使用IDPF标准混淆字体文件

时间:2012-02-11 02:15:46

标签: c# c#-4.0 c#-3.0 c#-2.0

我必须使用IDPF算法对字体文件-ot和.ttf文件进行模糊处理和去混淆。我有这个代码来混淆java中的文件

public void serialize(OutputStream out) throws IOException {
            try {
                    byte[] buffer = new byte[4096];
                    int len;
                    InputStream in = source.getInputStream();
                    boolean first = true;
                    while ((len = in.read(buffer)) > 0) {
                            if( first && mask != null ) {
                                    first = false;
                                    for( int i = 0 ; i < 1040 ; i++ ) {
                                            buffer[i] = (byte)(buffer[i] ^ mask[i%mask.length]);
                                    }
                            }
                            out.write(buffer, 0, len);
                    }
            } catch (IOException e) {
                    e.printStackTrace();
            }
            out.close();
    }

是否有加密密钥的要求,因为此代码中未使用加密密钥。请指导我如何开始

1 个答案:

答案 0 :(得分:0)

它不需要加密密钥,因为它不加密文件,它正在混淆它。如果你想加密一个文件,然后解密它,.net框架中就有很多内置的类用于这个目的,并且它们采用加密密钥。

查看this namespace.It包含许多类,允许您使用不同的算法来加密和解密数据。

此外,永远不要编写自己的加密代码,因为它几乎肯定会破碎(除非你是一个天才,非常尽责,并且在接下来的一两年内没有其他更重要的事情。)