Пример #1
0
 internal static byte[] Digest(DigestFactory.Digest digest, MutableString key, MutableString data)
 {
     // TODO: does MRI really modify the digest object?
     digest.Algorithm.Key = key.ConvertToBytes();
     byte[] hash = digest.Algorithm.ComputeHash(data.ConvertToBytes());
     return(hash);
 }
Пример #2
0
            public static MutableString /*!*/ Digest(RubyClass /*!*/ self,
                                                     [NotNull] DigestFactory.Digest /*!*/ digest,
                                                     [NotNull] MutableString /*!*/ key,
                                                     [NotNull] MutableString /*!*/ data)
            {
                byte[] hash = Digest(digest, key, data);

                return(MutableString.CreateBinary(hash));
            }
Пример #3
0
            public static MutableString /*!*/ HexDigest(RubyClass /*!*/ self, [NotNull] DigestFactory.Digest /*!*/ digest,
                                                        [NotNull] MutableString /*!*/ key, [NotNull] MutableString /*!*/ data)
            {
                // TODO: does MRI really modify the digest object?
                digest.Algorithm.Key = key.ConvertToBytes();
                byte[] hash = digest.Algorithm.ComputeHash(data.ConvertToBytes());

                return(MutableString.Create(BitConverter.ToString(hash).Replace("-", "").ToLower()));
            }
Пример #4
0
            public static MutableString /*!*/ HexDigest(RubyClass /*!*/ self,
                                                        [NotNull] DigestFactory.Digest /*!*/ digest,
                                                        [NotNull] MutableString /*!*/ key,
                                                        [NotNull] MutableString /*!*/ data)
            {
                byte[] hash = Digest(digest, key, data);

                // TODO (opt):
                return(MutableString.CreateAscii(BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant()));
            }