From 47a21a80d4a35fd7905f092e71b80c8a6e2ae5cb Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Fri, 26 Jan 2018 13:30:32 +0000 Subject: [PATCH] =?utf8?q?[github-90]=20change=20default=20DSIG=20algorith?= =?utf8?q?m=20to=20SHA256.=20Thanks=20to=20J=C3=B6rn=20Franke.=20This=20cl?= =?utf8?q?oses=20#90?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1822293 13f79535-47bb-0310-9956-ffa450edef68 --- build.xml | 1 + .../poi/poifs/crypt/dsig/SignatureConfig.java | 4 +-- .../poifs/crypt/dsig/TestSignatureConfig.java | 33 +++++++++++++++++++ 3 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 src/ooxml/testcases/org/apache/poi/poifs/crypt/dsig/TestSignatureConfig.java diff --git a/build.xml b/build.xml index f50b9b9575..10462ee1e4 100644 --- a/build.xml +++ b/build.xml @@ -361,6 +361,7 @@ under the License. + diff --git a/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java b/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java index 6784ef10aa..85df30b3fd 100644 --- a/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java +++ b/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/SignatureConfig.java @@ -74,7 +74,7 @@ public class SignatureConfig { private ThreadLocal provider = new ThreadLocal<>(); private List signatureFacets = new ArrayList<>(); - private HashAlgorithm digestAlgo = HashAlgorithm.sha1; + private HashAlgorithm digestAlgo = HashAlgorithm.sha256; private Date executionTime = new Date(); private PrivateKey key; private List signingCertificateChain; @@ -234,7 +234,7 @@ public class SignatureConfig { } /** - * @return the main digest algorithm, defaults to sha-1 + * @return the main digest algorithm, defaults to sha256 */ public HashAlgorithm getDigestAlgo() { return digestAlgo; diff --git a/src/ooxml/testcases/org/apache/poi/poifs/crypt/dsig/TestSignatureConfig.java b/src/ooxml/testcases/org/apache/poi/poifs/crypt/dsig/TestSignatureConfig.java new file mode 100644 index 0000000000..4ded53bb2d --- /dev/null +++ b/src/ooxml/testcases/org/apache/poi/poifs/crypt/dsig/TestSignatureConfig.java @@ -0,0 +1,33 @@ +/* ==================================================================== + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +==================================================================== */ +package org.apache.poi.poifs.crypt.dsig; + +import org.apache.poi.poifs.crypt.HashAlgorithm; +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +public class TestSignatureConfig { + + @Test + public void testDigestAlgo() throws Exception { + SignatureConfig sc = new SignatureConfig(); + assertEquals(HashAlgorithm.sha256, sc.getDigestAlgo()); + sc.setDigestAlgo(HashAlgorithm.sha1); + assertEquals(HashAlgorithm.sha1, sc.getDigestAlgo()); + } +} -- 2.39.5