草庐IT

private_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 - 枚举实践——在类内定义/单独定义,公开/私有(private)

定义枚举时什么是好的做法?例如,我有一个Person类。对于此类,我选择使用具有值MALE和FEMALE的枚举。枚举应该在Person类中定义还是单独定义?枚举应该定义为私有(private)的还是公共(public)的?此外,您是否有任何进一步的建议可以使枚举的使用尽可能灵活? 最佳答案 恕我直言,让它成为publicstaticenum里面classPerson.原因是enumGender仅适用于人,所以把它放在那里以便它们绑定(bind)在一起(如果没有人的上下文,性别就没有用)。优点:减少类膨胀如果您将Person移动到另一

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 - 在使用 @JsonValue 反序列化类时,Jackson 更喜欢私有(private)构造函数而不是 @JsonCreator

我有一个带有私有(private)构造函数和静态工厂的简单类。我希望该类序列化为数字,所以我用@JsonValue注释了该字段的getter。然而,Jackson似乎更喜欢私有(private)构造函数而不是静态工厂,即使我用@JsonCreator注释静态工厂也是如此。如果我用@JsonIgnore注释私有(private)构造函数,它会起作用,但感觉有点不对劲。我看到一些帖子声称@JsonCreator只有在参数用@JsonProperty注释时才有效;但是,序列化为JSON对象的对象似乎就是这种情况。此对象被序列化为数字,因此没有属性可提供给注释。有什么我想念的吗?示例类:pac

java - 该方法只能设置 public/protected/private 之一

关闭。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭上个月。Improvethisquestion我正在实现一个接口(interface):publicinterfaceConsultant{//somedocumentationhereexplainingitshouldthrow3typesofexceptionsCellLocationsuggest(GameBoardgameBoard)

java - "private constructor capture"习语的 Java 示例是什么?

谁能给我解释一下私有(private)构造函数捕获习语,并指出我们真正需要/不需要这种设计的地方? 最佳答案 目的是在施工期间获取临时值(value)。JavaPuzzlers的解决方案53中给出了一个示例:publicclassMyThingextendsThing{privatefinalintarg;publicMyThing(){this(SomeOtherClass.func());}privateMyThing(inti){super(i);arg=i;}}在这种情况下,我们想要捕获并存储我们希望传递给父类(superc

java - 大型内部类和私有(private)变量

我遇到过几次的一件事是服务类(如JBoss服务)由于辅助内部类而变得过大。我还没有找到打破类的好方法。这些助手通常是线程。这是一个例子:/**Assetservicekeepstrackofthemetadataaboutassetsthatliveonother*systems.Complicationsincludethefacttheassetshavealifecycleandtheir*physicalrepresentationlivesonothersystemsthathavetobepolledtofind*outiftheAssetisstillthere.*/pu

java - 类访问内部类私有(private)?

ClassOuter{...privateclassNode{privateTdata;...privateTgetData(){returndata;}}}如果外部类可以访问内部类私有(private)成员,那么使用set和get方法的目的是什么?将内部类设为私有(private)的目的是什么?包访问权限? 最佳答案 PrivateInnerclasses是当你不希望类暴露给包内或包外的外部类时编写的。它们仅在外部级别类中使用。getter和setter在私有(private)类中通常没有意义,因为无论如何您都可以访问实例变量。

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

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