Class MACUtils


  • public class MACUtils
    extends java.lang.Object
    Provides support for generating and checking MACs (Message Authentication Codes) using Alfresco's secret keys.
    Since:
    4.0
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  MACUtils.MACInput
      Represents the information to be fed into the MAC generator
    • Constructor Summary

      Constructors 
      Constructor Description
      MACUtils()
      Default constructor for IOC
    • Constructor Detail

      • MACUtils

        public MACUtils()
        Default constructor for IOC
    • Method Detail

      • setKeyProvider

        public void setKeyProvider​(KeyProvider keyProvider)
      • setMacAlgorithm

        public void setMacAlgorithm​(java.lang.String macAlgorithm)
      • getMac

        protected javax.crypto.Mac getMac​(java.lang.String keyAlias)
                                   throws java.lang.Exception
        Throws:
        java.lang.Exception
      • longToByteArray

        protected byte[] longToByteArray​(long l)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • generateMAC

        public byte[] generateMAC​(java.lang.String keyAlias,
                                  MACUtils.MACInput macInput)
      • validateMAC

        public boolean validateMAC​(java.lang.String keyAlias,
                                   byte[] expectedMAC,
                                   MACUtils.MACInput macInput)
        Compares the expectedMAC against the MAC generated from Assumes message has been decrypted
        Parameters:
        keyAlias - String
        expectedMAC - byte[]
        macInput - MACInput
        Returns:
        boolean