Esempio n. 1
0
 private static byte[] MhanoHarknessBase32Decode(int repeats, string encoded)
 {
     byte[] result = null;
     var encoding = new MhanoHarkness.Base32Url(true, true, false);
     for (int i = 0; i < repeats; i++)
     {
         result = encoding.Decode(encoded);
     }
     return result;
 }
Esempio n. 2
0
 private static string MhanoHarknessBase32Encode(int repeats, byte[] data)
 {
     string result = null;
     var encoding = new MhanoHarkness.Base32Url(true, true, false);
     for (int i = 0; i < repeats; i++)
     {
         result = encoding.Encode(data);
     }
     return result;
 }
Esempio n. 3
0
        private static void Check(byte[] data)
        {
            #region Encode Base32 (4648)

            string wiryStandardBase32 = Wiry.Base32.Base32Encoding.Standard.GetString(data);
            string albireoBase32 = Albireo.Base32.Base32.Encode(data);
            string simpleBase32Rfc4648 = SimpleBase.Base32.Rfc4648.Encode(data, true);
            string mhanoHarknessBase32 = new MhanoHarkness.Base32Url(true, true, false).Encode(data);
            string wallFBase32 = WallF.BaseNEncodings.BaseEncoding.Base32.ToBaseString(data);

            if (wiryStandardBase32 != albireoBase32)
                throw new Exception("wiryStandardBase32 != albireoBase32");

            if (wiryStandardBase32 != simpleBase32Rfc4648)
                throw new Exception("wiryStandardBase32 != simpleBase32Rfc4648");

            if (wiryStandardBase32 != mhanoHarknessBase32)
                throw new Exception("wiryStandardBase32 != mhanoHarknessBase32");

            if (wiryStandardBase32 != wallFBase32)
                throw new Exception("wiryStandardBase32 != wallFBase32");

            string encodedBase32 = wiryStandardBase32;

            #endregion

            #region Decode Base32 (4648)

            byte[] wiryStandardBase32Decoded = Wiry.Base32.Base32Encoding.Standard.ToBytes(encodedBase32);
            byte[] albireoBase32Decoded = Albireo.Base32.Base32.Decode(encodedBase32);
            byte[] simpleBase32Rfc4648Decoded = SimpleBase.Base32.Rfc4648.Decode(encodedBase32);
            byte[] mhanoHarknessBase32Decoded = new MhanoHarkness.Base32Url(true, true, false).Decode(encodedBase32);
            byte[] wallFBase32Decoded = WallF.BaseNEncodings.BaseEncoding.Base32.FromBaseString(encodedBase32);

            if (!data.SequenceEqual(wiryStandardBase32Decoded))
                throw new Exception("data != wiryStandardBase32Decoded");

            if (!data.SequenceEqual(albireoBase32Decoded))
                throw new Exception("data != albireoBase32Decoded");

            if (!data.SequenceEqual(simpleBase32Rfc4648Decoded))
                throw new Exception("data != simpleBase32Rfc4648Decoded");

            if (!data.SequenceEqual(mhanoHarknessBase32Decoded))
                throw new Exception("data != mhanoHarknessBase32Decoded");

            if (!data.SequenceEqual(wallFBase32Decoded))
                throw new Exception("data != wallFBase32Decoded");

            #endregion

            #region Encode z-base-32

            string wiryZBase32 = Wiry.Base32.Base32Encoding.ZBase32.GetString(data);
            string mhanoHarknessZBase32 =
                new MhanoHarkness.Base32Url(MhanoHarkness.Base32Url.ZBase32Alphabet).Encode(data);

            if (wiryZBase32 != mhanoHarknessZBase32)
                throw new Exception("wiryZBase32 != mhanoHarknessZBase32");

            string encodedZBase32 = wiryZBase32;

            #endregion

            #region Decode z-base-32

            byte[] wiryZBase32Decoded = Wiry.Base32.Base32Encoding.ZBase32.ToBytes(encodedZBase32);
            byte[] mhanoHarknessZBase32Decoded =
                new MhanoHarkness.Base32Url(MhanoHarkness.Base32Url.ZBase32Alphabet).Decode(encodedZBase32);

            if (!data.SequenceEqual(wiryZBase32Decoded))
                throw new Exception("data != wiryZBase32Decoded");

            if (!data.SequenceEqual(mhanoHarknessZBase32Decoded))
                throw new Exception("data != mhanoHarknessZBase32Decoded");

            #endregion
        }