Java / JCE:解密用RSA加密的“长”消息

我有一个包含在byte []中的消息,用“RSA / ECB / PKCS1Padding”加密。 为了解密它,我创建了一个Cipher c并用它启动它 c = Cipher.getInstance(“RSA/ECB/PKCS1Padding”); 直到现在我只使用doFinal()方法解密小消息,返回带有解密字节的byte []。 c.init(Cipher.DECRYPT_MODE, privateKey); byte[] decryptetBytes = c.doFinal(encryptedBytes); 但在这种情况下,数据更大(约500字节), doFinal()方法抛出exception(javax.crypto.IllegalBlockSizeException:数据不得超过128字节)。 我想我需要使用update() – 方法,但我无法弄清楚如何让它正常工作。 这是怎么做到的?

NetworkInterface.getNetworkInterfaces()未列出所有接口

我的机器上有三个接口(eth0,Loopback,wlan0) ,我想使用Java-API来获取mac地址。 我用这个代码。 Enumeration nets = NetworkInterface.getNetworkInterfaces(); for (NetworkInterface netint : Collections.list(nets)) displayInterfaceInformation(netint); } static void displayInterfaceInformation(NetworkInterface netint) throws SocketException { System.out.println(“Display name: ” + netint.getDisplayName()); System.out.println(“Hardware address: ” + Arrays.toString(netint.getHardwareAddress())); } 但那段代码打印wlan0,loopback , 但错过了eth0 。 我的操作系统Ubuntu,任何帮助。 更新 o / p( strace -f java Networks 2>&1| grep ioctl ).. blank(空) 。 java -version java版“1.7.0_21”Java(TM)SE运行时环境(版本1.7.0_21-b11)Java HotSpot(TM)64位服务器VM(版本23.21-b01,混合模式) […]

Java:为方便起见,在equals()中使用hashCode()?

考虑以下测试用例,将equals中的hashCode()方法用作方便的快捷方式是一种不好的做法吗? public class Test { public static void main(String[] args){ Test t1 = new Test(1, 2.0, 3, new Integer(4)); Test t2 = new Test(1, 2.0, 3, new Integer(4)); System.out.println(t1.hashCode() + “\r\n”+t2.hashCode()); System.out.println(“t1.equals(t2) ? “+ t1.equals(t2)); } private int myInt; private double myDouble; private long myLong; private Integer myIntObj; public Test(int i, double d, long l, […]

线程对象在哪里创建? 堆栈还是堆?

当我说出类似的话: Thread t1 = new Thread(); 它是在堆还是堆栈上创建它?

Java Mail API的替代品

我正在尝试发送带有附件的电子邮件,发现java邮件api令人生气。 javax.activation.DataHandler只有两个实现,它要求我创建一个本地文件来发送附件。 可能是我必须编写自己的DataHandler实现,但此时我不想这样做。 提前致谢 ! 阿迪 编辑:我的意思是javax.activation.DataSource而不是javax.activation.DataHandler

检查Java字节码是否包含调试符号

我想知道如何检查编译的Java类是否包含调试符号。 问题是我使用debug =“on”从ant编译应用程序,但是特定的JVM会抛出exception:它表示缺少调试符号。 谢谢。

ProGuard打破了JavaFX应用程序

我正在尝试模糊我的JavaFX应用程序,但它失败了。 生成的结果不起作用,我不明白为什么。 生成的jar只是失败,因为fxml文件不能再加载所有导入(ClassNotFoundException)。 部署工作流程: 构建可运行的jar(在IntelliJ knwon中作为工件) 使用ProGuard混淆该jar 修复ProGuard无法完成的jar中的一些问题 1)最小的示例应用程序 示例应用程序’GuardTest’是一个IntelliJ项目,由3个类组成。 sample.Main:包含应用程序入口点并加载GUI fxml文件’sample.fxml’ sample.Controller:’sample.fxml’的控制器类 controls.CustomControl:一个从HBoxinheritance的简单javafx控件。 这在’sample.fxml’中使用 ‘sample.fxml’的内容: 2)混淆 现在我使用ProGuard生成从上面的项目生成的jar文件。 我使用以下设置: -target 8 -injars ./out/artifacts/JavaFXApp/JavaFXApp.jar -outjars ./out/obfuscated/Obfuscated.jar -ignorewarnings -printmapping ./out/obfuscated/proguard.map -dontusemixedcaseclassnames -dontshrink -dontoptimize -dontskipnonpubliclibraryclasses -dontskipnonpubliclibraryclassmembers #-flattenpackagehierarchy -repackageclasses ‘p’ -allowaccessmodification -libraryjars “/lib/rt.jar” -libraryjars “/lib/javaws.jar” -libraryjars “/lib/ext/jfxrt.jar” -adaptresourcefilecontents **.fxml,**.properties,META-INF/MANIFEST.MF,images/*.jar,publicCerts.store,production.version -keepattributes javafx.fxml.FXML,Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,LocalVariable*Table,*Annotation*,Synthetic,EnclosingMethod -keepclassmembers class * { @javafx.fxml.FXML *; } -keepclassmembernames […]

带有配置文件的Java CMYK到RGB。 输出太暗

有很多次问过类似的问题。 但我仍然不明白为什么在用ICC_Profile转换图片后输出太暗。 我尝试了很多配置文件:来自Adobe网站,以及图片本身。 在图像之前 在图像之后 码 Iterator readers = ImageIO.getImageReadersByFormatName(“jpeg”); ImageReader reader = null; while (readers.hasNext()){ reader = readers.next(); if (reader.canReadRaster()){ break; } } // read ImageInputStream ios = ImageIO.createImageInputStream(new FileInputStream(new File(myPic.jpg))); reader.setInput(ios); Raster r = reader.readRaster(0, null); BufferedImage result = new BufferedImage(r.getWidth(), r.getHeight(), bufferedImage.TYPE_INT_RGB); WritableRaster resultRaster = result.getRaster(); ICC_Profile iccProfile = ICC_Profile.getInstance(new File(“profile_name.icc”); ColorSpace […]

什么是zookeeper端口及其用法?

我对动物园管理员港口很新,过去几天我都会遇到这个港口。 我两次介绍了zookeeper port关键字: 配置neo4j数据库集群( 链接 )和 运行编译的voltdb目录( 链接 )(请参阅网络配置参数) 然后,我遇到了Apache Zookeeper ,(我猜这与分布式应用程序有关,我也是分布式应用程序的新手)。 因此问题在我脑海中浮现: 在以上2个场景中是否有apache zookeeper的任何实现? 这个动物园管理员端口到底在做什么? 任何帮助将不胜感激,谢谢。

java.util.Date和Joda Time API之间的差异

可能重复: 我应该使用Java日期和时间类,还是使用像Joda Time这样的第三方库? 我可以使用一些关于什么时候使用Joda Time而不是基本的java.util.Date类的指导。 有什么好处? Joda Time是否允许您使用Date类做任何事情,或者它更容易使用或什么? 另外,我看到有关Joda Time是否是标准API的一部分的相互矛盾的信息。 是标准还是不标准?