Ejemplo n.º 1
0
        /// <summary>
        /// Key computing modern path
        /// </summary>
        /// <param name="seed"></param>
        /// <param name="keys"></param>
        /// <returns></returns>
        private uint[] PrepareKey(uint seed, uint[] keys)
        {
            uint v1 = Keyset.InvertedXorShift(seed, keys[0]);
            uint v2 = Keyset.InvertedXorShift(v1, keys[1]);
            uint v3 = Keyset.InvertedXorShift(v2, keys[2]);
            uint v4 = Keyset.InvertedXorShift(v3, keys[3]);

            uint[] newKey = new uint[4];
            newKey[0] = v1 & 0x1FFFF;
            newKey[1] = v2 & 0x7FFFF;
            newKey[2] = v3 & 0x7FFFFF;
            newKey[3] = v4 & 0x1FFFFFFF;

            return(newKey);
        }
Ejemplo n.º 2
0
 public VolumeCryptoTransform(Keyset keyset, uint seed)
 {
     this.currentKey = keyset.ComputeKey(seed);
 }
Ejemplo n.º 3
0
 public VolumeCryptoOld(Keyset keyset)
 {
     _keys = keyset;
 }