求篱笆加密的算法,上一次的考试题,完全不知道该怎么下手
函数功能对传入的数据进行篱笆加密,其算法参见下一页的附录。
函数原型
int fence_cipher(unsigned char* data, int data_length, int n);
参数
data 待加密数据,其长度由参数data_length指定。返回时,此数组中应该是加密后的数据。
data_length 数据长度(字节数)。
n 篱笆条数,1<n< data_length。
返回值
0 操作成功
1 参数无效(n的值超出范围)
2 待加密数据为空(data_length为0)。
说明
加密后的数据无需按分组写入data,直接将加密后的结果返回即可