Saturday, October 29, 2016

Cryptography: recommended Wikipedia readings

https://en.wikipedia.org/wiki/Public_key_certificate

https://en.wikipedia.org/wiki/RSA_(cryptosystem)

https://en.wikipedia.org/wiki/Digital_signature

https://en.wikipedia.org/wiki/Certificate_authority

https://en.wikipedia.org/wiki/Intermediate_Certificate_Authority

https://en.wikipedia.org/wiki/Self-signed_certificate

https://en.wikipedia.org/wiki/Transport_Layer_Security

https://en.wikipedia.org/wiki/Message_authentication_code

https://en.wikipedia.org/wiki/Domain-validated_certificate



I have started reading "The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography" by Simon Singh but I was somehow disappointed... see this comment from another reader.



Network security training by MIT

I was looking for some video training on WebLogic security and found mostly very poor, boring, slow videos presented by trainers who say "I mean" in every sentence and take themselves very seriously.

Then I stumbled upon this great series on Network Security https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-858-computer-systems-security-fall-2014/video-lectures/ with definitely a more professional approach. I have watched lesson 14 on "https and ssl" by Nickolai Zeldovich and it's quite good - well at least you don't fall asleep while watching it.

Other recommended videos:

basics on SSL/TLS



BlackHat USA 2011: SSL And The Future Of Authenticity









Tuesday, October 25, 2016

Apache POI is a Memory Pig

We get this stacktrace


java.lang.OutOfMemoryError: Java heap space
 at java.util.Arrays.copyOf(Arrays.java:2271)
 at java.io.ByteArrayOutputStream.toByteArray(ByteArrayOutputStream.java:191)
 at org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource$FakeZipEntry.(ZipInputStreamZipEntrySource.java:132)
 at org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource.(ZipInputStreamZipEntrySource.java:55)
 at org.apache.poi.openxml4j.opc.ZipPackage.(ZipPackage.java:88)
 at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:273)



This even processing relatively small (10 MB) Excel files.
It seems that we are not alone on this Planet to experience this problem. And there doesn't seem to be a workaround, apart increasing heap, for lack of a Streaming Interface.