草庐IT

resource_key

全部标签

Java 将敏感的 'key' 存储为 String 或 char[]?

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Whyischar[]preferredoverstringforpasswords?我在某处读到,将敏感key存储为char[]而不是String更好,因为后者可以在内存中找到。由于JPasswordField的getText()方法已弃用,这也有点意义。这是真的吗?

java - 为什么在 Java 的 try-with-resources 构造中 catch 之前调用资源的 close() 方法?

我偶然发现,是这样的。请参阅下面的示例:publicclassAutoClosableTest{publicstaticvoidmain(String[]args)throwsException{try(MyClosableinstance=newMyClosable()){if(true){System.out.println("try");thrownewException("Foo");}}catch(Exceptione){System.out.println("Catched");}finally{System.out.println("Finally");}}publics

java - 使用 Spring KeyGenerator 生成唯一的缓存 key 不起作用

当我的缓存键在Spring中使用@Cacheable注释发生冲突时,我遇到了问题。例如,使用以下两种方法:@Cacheable("doOneThing")publicvoiddoOneThing(Stringname){//dosomethingwithname}@Cacheable("doAnotherThing")publicvoiddoAnotherThing(Stringname){//dosomeotherthingwithname}这是我的缓存配置,我在其中添加了一个keyGenerator和一个cacheManagerbean:@Configuration@EnableC

java - 有没有更简洁的方法来使用 try-with-resource 和 PreparedStatement?

这是Main.java:packagefoo.sandbox.db;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;publicclassMain{publicstaticvoidmain(String[]args){finalStringSQL="select*fromNVPAIRwherename=?";try(Connectionconnection=DatabaseManager.getConnectio

java - 如何使用 keytool 查看证书 key 大小?

创建证书后,可以为命令genkeypair配置-keysize选项。是否可以使用keytool查看证书key大小?我尝试了这些选项但没有成功:keytool-list–rfckeytool-list–v没能在这里找到它:https://docs.oracle.com/javase/8/docs/technotes/tools/unix/keytool.html#keytool_option_list 最佳答案 使用keytool是不可能的,但是有一个名为“KeyStoreExplorer”的GUI替代方案可以显示key大小:

java - AES 加密 Java 无效 key 长度

我正在尝试创建一个AES加密方法,但由于某种原因我不断收到java.security.InvalidKeyException:Keylengthnot128/192/256bits代码如下:publicstaticSecretKeygetSecretKey(char[]password,byte[]salt)throwsNoSuchAlgorithmException,InvalidKeySpecException{SecretKeyFactoryfactory=SecretKeyFactory.getInstance("PBEWithMD5AndDES");//NOTE:lastar

Java 加密替代硬编码 key

我是加密新手。我查看了javax.crypto文档并使用此代码加密了一个文件...FilesaveFile=newFile("Settings.set");saveFile.delete();FileOutputStreamfout=newFileOutputStream(saveFile);//Encryptthesettings//Generateakeybytekey[]="MyEncryptionKey98".getBytes();DESKeySpecdesKeySpec=newDESKeySpec(key);SecretKeyFactorykeyFactory=SecretK

java - Java 1.6 中的 Try-with-resources 等价物

我有以下代码:publicclassMain{publicstaticvoidmain(String[]args)throwsSQLException{try(Connectionconn=DBUtil.getConnection(DBType.HSQLDB);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);ResultSetrs=stmt.executeQuery("SELECT*FROMtours");){DBUtil.getConnec

java - 无效的 AES key 长度 : 128 bytes?

我收到java.security.InvalidKeyException:InvalidAESkeylength:128bytesCIPHER.init(Cipher.ENCRYPT_MODE,keySpec);密码为CipherCIPHER=Cipher.getInstance("AES");和keySpecSecretKeySpeckeySpec=newSecretKeySpec(key,"AES");那个key是一个长度为128的byte[]我通过Diffie-Hellmankey交换获得(虽然我从哪里得到它应该不重要,对吧?),key完全由非零字节填充为什么Cipher.ini

Java - 属性 : Add new keys to properties file in run time?

是否可以创建一个新的属性文件并在运行时添加键和值?我想在安装我的应用程序时根据用户输入向属性文件添加新键。我检查了JavaProperties类,但它似乎可以为现有键设置值,但不能向属性文件添加新键。 最佳答案 您只需使用当前不存在的键调用setProperty即可添加新属性。不过,这只会在内存中执行-您必须再次调用store以将更改反射(reflect)回文件:Propertiesprop=newProperties();prop.load(...);//FileInputStreamorwhateverprop.setPrope