1 package org.eparapher.rcp.preferences;
2
3 import java.io.File;
4
5 import javax.xml.crypto.dsig.CanonicalizationMethod;
6 import javax.xml.crypto.dsig.DigestMethod;
7 import javax.xml.crypto.dsig.SignatureMethod;
8 import javax.xml.crypto.dsig.Transform;
9
10 import org.bouncycastle.cms.CMSSignedDataGenerator;
11 import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
12 import org.eclipse.jface.preference.IPreferenceStore;
13 import org.eparapher.core.crypto.EPKeystoreManager;
14 import org.eparapher.core.signature.XMLSignatureParameters;
15 import org.eparapher.core.tools.JVMSettings;
16 import org.eparapher.core.tools.OODaemonManager;
17 import org.eparapher.rcp.Activator;
18
19
20
21
22
23 public class PreferenceInitializer extends AbstractPreferenceInitializer {
24
25
26
27
28
29 public void initializeDefaultPreferences() {
30
31
32
33 String user = System.getProperty("user.name");
34
35 IPreferenceStore store = Activator.getDefault().getPreferenceStore();
36
37 store.setDefault( PreferenceConstants.P_USERKEYCERTCONTAINER, EPKeystoreManager.PKCS12_CONFIGNAME );
38 if ( JVMSettings.isWindowsOS() && JVMSettings.isJava16Min() )
39 store.setDefault( PreferenceConstants.P_USERKEYCERTCONTAINER, EPKeystoreManager.MSCAPI_CONFIGNAME );
40
41
42 store.setDefault(PreferenceConstants.P_LOCALOOOPTIONS, OODaemonManager.getsofficeParameters());
43 store.setDefault(PreferenceConstants.P_LOCALOOLIBPATH, OODaemonManager.findOOLibPath());
44 store.setDefault(PreferenceConstants.P_LOCALOOBINPATH, OODaemonManager.findOOBinaryPath());
45
46 store.setDefault(PreferenceConstants.P_LOCALDOCPATH, System.getProperty("user.home") );
47 store.setDefault(PreferenceConstants.P_LOCALPSAFEPATH, JVMSettings.getEParapherAppDirectory() + File.separator + "personalsafe.cms");
48
49 store.setDefault(PreferenceConstants.P_LOCALOO_AUTOSTART, false);
50
51
52 store.setDefault(PreferenceConstants.P_USERKEYCERTCERTALIAS, "");
53 store.setDefault(PreferenceConstants.P_PKCS11_LIBRARY_PATH, "");
54 if (JVMSettings.isSUNJRE())
55 store.setDefault(PreferenceConstants.P_PKCS11_SLOT_ID, 1);
56 else if (JVMSettings.isIBMJRE())
57 store.setDefault(PreferenceConstants.P_PKCS11_SLOT_ID, 0);
58
59 store.setDefault(PreferenceConstants.P_PKCS11_SUN_CONFIG_FILE, "pkcs11.cfg");
60 store.setDefault(PreferenceConstants.P_PKCS11_TRACKING_THREAD_SLEEP, 500L);
61
62 String filekspath = JVMSettings.getEParapherAppDirectory() + File.separator + "userkeystore.";
63 store.setDefault(PreferenceConstants.P_USERBCFILEPATH, filekspath + "bc");
64 store.setDefault(PreferenceConstants.P_USERJCEKSFILEPATH, filekspath + "jceks");
65 store.setDefault(PreferenceConstants.P_USERJKSFILEPATH, filekspath + "jks");
66 store.setDefault(PreferenceConstants.P_USERPKCS12FILEPATH, filekspath + "p12");
67 store.setDefault(PreferenceConstants.P_USERUBERBCFILEPATH, filekspath + "uber");
68 store.setDefault(PreferenceConstants.P_USERKDBFILEPATH, filekspath + "kdb");
69
70 store.setDefault(PreferenceConstants.P_USERBCPASSPHRASE, "");
71 store.setDefault(PreferenceConstants.P_USERJCEKSPASSPHRASE, "");
72 store.setDefault(PreferenceConstants.P_USERJKSPASSPHRASE, "");
73 store.setDefault(PreferenceConstants.P_USERPKCS12PASSPHRASE, "");
74 store.setDefault(PreferenceConstants.P_USERUBERBCPASSPHRASE, "");
75 store.setDefault(PreferenceConstants.P_USERKDBPASSPHRASE, "");
76
77
78 store.setDefault(PreferenceConstants.P_SECRET_POL_CHECK, true);
79
80 store.setDefault(PreferenceConstants.P_SECRET_POL_FORCE_LENGTH, true);
81 store.setDefault(PreferenceConstants.P_SECRET_POL_LENGTH_SIZE, 8);
82
83 store.setDefault(PreferenceConstants.P_SECRET_POL_FORCE_UPPER, true);
84 store.setDefault(PreferenceConstants.P_SECRET_POL_UPPER_MIN, 1);
85
86 store.setDefault(PreferenceConstants.P_SECRET_POL_FORCE_LOWER, true);
87 store.setDefault(PreferenceConstants.P_SECRET_POL_LOWER_MIN, 1);
88
89 store.setDefault(PreferenceConstants.P_SECRET_POL_FORCE_NUMB, true);
90 store.setDefault(PreferenceConstants.P_SECRET_POL_NUMB_MIN, 1);
91
92 store.setDefault(PreferenceConstants.P_SECRET_POL_FORCE_SPEC, true);
93 store.setDefault(PreferenceConstants.P_SECRET_POL_SPEC_MIN, 1);
94
95
96 store.setDefault(PreferenceConstants.P_SIG_TS_SERVERS, "http://tsp.iaik.at/tsp/TspRequest");
97 store.setDefault(PreferenceConstants.P_SIG_ADD_TIMESTAMP, false);
98 store.setDefault(PreferenceConstants.P_SIG_ADD_CRL, false);
99
100
101 if ( JVMSettings.isWindowsOS() && JVMSettings.isJava16Min() )
102 store.setDefault( PreferenceConstants.P_CMSHASHALGORITHM, CMSSignedDataGenerator.DIGEST_SHA1);
103 else
104 store.setDefault( PreferenceConstants.P_CMSHASHALGORITHM, CMSSignedDataGenerator.DIGEST_SHA256);
105 store.setDefault( PreferenceConstants.P_CMSDETACHEDSIGNATURE, true);
106
107
108 store.setDefault(PreferenceConstants.P_PDFSIGNATUREFORMAT, "PPKMS");
109 store.setDefault(PreferenceConstants.P_PDFSIGNATURECERTIF, "1");
110 store.setDefault(PreferenceConstants.P_PDFSIGNATUREMULTIPLE, true);
111 store.setDefault(PreferenceConstants.P_PDFSIGNATUREVISIBLE, true);
112 store.setDefault(PreferenceConstants.P_PDFSIGNATUREVISIBLEPAGE, 1);
113 store.setDefault(PreferenceConstants.P_PDFSIGNATUREIMAGE, JVMSettings.getEParapherAppDirectory() + File.separator + "pdfsignature.png");
114 store.setDefault(PreferenceConstants.P_PDFSIGNATUREIMAGESIZE, 100);
115 store.setDefault(PreferenceConstants.P_PDFSIGIMGLOWERLEFTX, 400);
116 store.setDefault(PreferenceConstants.P_PDFSIGIMGLOWERLEFTY, 100);
117 store.setDefault(PreferenceConstants.P_PDFSIGIMGUPPERRIGHTX, 550);
118 store.setDefault(PreferenceConstants.P_PDFSIGIMGUPPERRIGHTY, 250);
119
120 store.setDefault(PreferenceConstants.P_PDFSIGNATUREREPLACEFILE, false);
121 store.setDefault(PreferenceConstants.P_PDFSIGNATUREFILENAMEAPP, ".signed");
122 store.setDefault(PreferenceConstants.P_PDFSIGNATURELOCATION, "Paris, France");
123 store.setDefault(PreferenceConstants.P_PDFSIGNATUREREASON, "I'm the author");
124
125
126 store.setDefault(PreferenceConstants.P_XML_DIGEST, DigestMethod.SHA512);
127 store.setDefault(PreferenceConstants.P_XML_SIGALG, SignatureMethod.RSA_SHA1);
128 store.setDefault(PreferenceConstants.P_XML_TRANSFORM, Transform.ENVELOPED);
129 store.setDefault(PreferenceConstants.P_XML_CANONICAL, CanonicalizationMethod.INCLUSIVE_WITH_COMMENTS);
130 store.setDefault(PreferenceConstants.P_XML_OBJECTIDs, "#eParapherSignature");
131 store.setDefault(PreferenceConstants.P_XML_SIGFORMAT, XMLSignatureParameters.XMLSigFormatFamilies[1][1]);
132 store.setDefault(PreferenceConstants.P_XML_DTDVALIDATION, true);
133
134
135 store.setDefault(PreferenceConstants.P_LOGLEVEL, "INFO");
136 }
137
138 }