// MACTripleDES.cs: Handles MAC with TripleDES
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2004-2005 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+#if !NET_2_1 || MONOTOUCH
+
using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
// http://www.itl.nist.gov/fipspubs/fip81.htm
// LAMESPEC: MACTripleDES == MAC-CBC using TripleDES (not MAC-CFB).
+ [ComVisible (true)]
public class MACTripleDES: KeyedHashAlgorithm {
private TripleDES tdes;
Dispose (false);
}
-#if NET_2_0
[ComVisible (false)]
public PaddingMode Padding {
get { return tdes.Padding; }
set { tdes.Padding = value; }
}
-#endif
protected override void Dispose (bool disposing)
{
mac.Initialize (KeyValue);
}
- protected override void HashCore (byte[] rgb, int ib, int cb)
+ protected override void HashCore (byte[] rgbData, int ibStart, int cbSize)
{
if (m_disposed)
throw new ObjectDisposedException ("MACTripleDES");
Initialize ();
State = 1;
}
- mac.Core (rgb, ib, cb);
+ mac.Core (rgbData, ibStart, cbSize);
}
protected override byte[] HashFinal ()
}
}
}
+
+#endif
+