当前位置: 首页>>代码示例>>Java>>正文


Java MessageDigestAlgorithm类代码示例

本文整理汇总了Java中org.apache.xml.security.algorithms.MessageDigestAlgorithm的典型用法代码示例。如果您正苦于以下问题:Java MessageDigestAlgorithm类的具体用法?Java MessageDigestAlgorithm怎么用?Java MessageDigestAlgorithm使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MessageDigestAlgorithm类属于org.apache.xml.security.algorithms包,在下文中一共展示了MessageDigestAlgorithm类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getDigestMethodAlgorithm

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
private static String getDigestMethodAlgorithm(final Optional<Signature> signature) {
    if (signature.isPresent()) {
        XMLSignature xmlSignature = ((SignatureImpl) signature.get()).getXMLSignature();
        if (xmlSignature != null) {
            SignedInfo signedInfo = xmlSignature.getSignedInfo();
            try {
                if (signedInfo != null && signedInfo.getLength() != 0 && signedInfo.item(0) != null) {
                    MessageDigestAlgorithm messageDigestAlgorithm = signedInfo.item(0).getMessageDigestAlgorithm();
                    if (messageDigestAlgorithm != null) {
                        return messageDigestAlgorithm.getJCEAlgorithmString();
                    }
                }
            } catch (XMLSecurityException e) {
                LOG.debug(format("Error getting message digest algorithm: {0}", e));
            }
        }
    }
    return null;
}
 
开发者ID:alphagov,项目名称:verify-hub,代码行数:20,代码来源:UnknownMethodAlgorithmLogger.java

示例2: getMessageDigestAlgorithm

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
/**
 * Returns {@link MessageDigestAlgorithm}
 *
 *
 * @return {@link MessageDigestAlgorithm}
 *
 * @throws XMLSignatureException
 */
public MessageDigestAlgorithm getMessageDigestAlgorithm() throws XMLSignatureException {
    if (digestMethodElem == null) {
        return null;
    }

    String uri = digestMethodElem.getAttributeNS(null, Constants._ATT_ALGORITHM);

    if ("".equals(uri)) {
        return null;
    }

    if (secureValidation && MessageDigestAlgorithm.ALGO_ID_DIGEST_NOT_RECOMMENDED_MD5.equals(uri)) {
        Object exArgs[] = { uri };

        throw new XMLSignatureException("signature.signatureAlgorithm", exArgs);
    }

    return MessageDigestAlgorithm.getInstance(getDocument(), uri);
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:28,代码来源:Reference.java

示例3: verify

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
/**
 * Tests reference validation is success or false
 *
 * @return true if reference validation is success, otherwise false
 * @throws ReferenceNotInitializedException
 * @throws XMLSecurityException
 */
public boolean verify()
    throws ReferenceNotInitializedException, XMLSecurityException {
    byte[] elemDig = this.getDigestValue();
    byte[] calcDig = this.calculateDigest(true);
    boolean equal = MessageDigestAlgorithm.isEqual(elemDig, calcDig);

    if (!equal) {
        log.warn("Verification failed for URI \"" + this.getURI() + "\"");
        log.warn("Expected Digest: " + Base64.encode(elemDig));
        log.warn("Actual Digest: " + Base64.encode(calcDig));
    } else {
        if (log.isDebugEnabled()) {
            log.debug("Verification successful for URI \"" + this.getURI() + "\"");
        }
    }

    return equal;
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:26,代码来源:Reference.java

示例4: engineVerify

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
/**
 * Proxy method for {@link java.security.Signature#verify(byte[])}
 * which is executed on the internal {@link java.security.Signature} object.
 *
 * @param signature
 * @return true if the signature is correct
 * @throws XMLSignatureException
 */
protected boolean engineVerify(byte[] signature) throws XMLSignatureException {
    try {
        if (this.HMACOutputLengthSet && this.HMACOutputLength < getDigestLength()) {
            if (log.isDebugEnabled()) {
                log.debug("HMACOutputLength must not be less than " + getDigestLength());
            }
            Object[] exArgs = { String.valueOf(getDigestLength()) };
            throw new XMLSignatureException("algorithms.HMACOutputLengthMin", exArgs);
        } else {
            byte[] completeResult = this.macAlgorithm.doFinal();
            return MessageDigestAlgorithm.isEqual(completeResult, signature);
        }
    } catch (IllegalStateException ex) {
        throw new XMLSignatureException(ex);
    }
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:25,代码来源:IntegrityHmac.java

示例5: testSHA1

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA1() throws Exception {
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA1);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA1, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA-1");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:18,代码来源:DigestAlgorithmTest.java

示例6: testSHA224

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA224() throws Exception {
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA224);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA224, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA-224");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:18,代码来源:DigestAlgorithmTest.java

示例7: testSHA256

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA256() throws Exception {
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA256);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA256, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA-256");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:18,代码来源:DigestAlgorithmTest.java

示例8: testSHA384

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA384() throws Exception {
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA384);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA384, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA-384");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:18,代码来源:DigestAlgorithmTest.java

示例9: testSHA512

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA512() throws Exception {
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA512);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA512, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA-512");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:18,代码来源:DigestAlgorithmTest.java

示例10: testMD5

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testMD5() throws Exception {
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_NOT_RECOMMENDED_MD5);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_NOT_RECOMMENDED_MD5, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("MD5");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:18,代码来源:DigestAlgorithmTest.java

示例11: testRIPEMD160

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testRIPEMD160() throws Exception {
    // This only works with BouncyCastle
    if (Security.getProvider("BC") == null) {
        return;
    }
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_RIPEMD160);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_RIPEMD160, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("RIPEMD160");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:22,代码来源:DigestAlgorithmTest.java

示例12: testWhirlpool

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testWhirlpool() throws Exception {
    // This only works with BouncyCastle
    if (Security.getProvider("BC") == null) {
        return;
    }
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_WHIRLPOOL);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_WHIRLPOOL, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("WHIRLPOOL");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:22,代码来源:DigestAlgorithmTest.java

示例13: testSHA3_224

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA3_224() throws Exception {
    // This only works with BouncyCastle
    if (Security.getProvider("BC") == null) {
        return;
    }
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA3_224);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA3_224, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA3-224");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:22,代码来源:DigestAlgorithmTest.java

示例14: testSHA3_256

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA3_256() throws Exception {
    // This only works with BouncyCastle
    if (Security.getProvider("BC") == null) {
        return;
    }
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA3_256);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA3_256, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA3-256");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:22,代码来源:DigestAlgorithmTest.java

示例15: testSHA3_384

import org.apache.xml.security.algorithms.MessageDigestAlgorithm; //导入依赖的package包/类
@org.junit.Test
public void testSHA3_384() throws Exception {
    // This only works with BouncyCastle
    if (Security.getProvider("BC") == null) {
        return;
    }
    Document doc = XMLUtils.createDocumentBuilder(false).newDocument();

    MessageDigestAlgorithm digestAlgorithm =
        MessageDigestAlgorithm.getInstance(doc, MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA3_384);
    assertEquals(MessageDigestAlgorithm.ALGO_ID_DIGEST_SHA3_384, digestAlgorithm.getAlgorithmURI());

    byte[] digest = digestAlgorithm.digest("test-string".getBytes());
    assertNotNull(digest);
    assertTrue(digest.length > 0);

    // Now compare against a JDK MessageDigest Object
    MessageDigest md = MessageDigest.getInstance("SHA3-384");
    byte[] digest2 = md.digest("test-string".getBytes());
    assertTrue(Arrays.equals(digest, digest2));
}
 
开发者ID:Legostaev,项目名称:xmlsec-gost,代码行数:22,代码来源:DigestAlgorithmTest.java


注:本文中的org.apache.xml.security.algorithms.MessageDigestAlgorithm类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。