herumi / mcl

a portable and fast pairing-based cryptography library
BSD 3-Clause "New" or "Revised" License
450 stars 152 forks source link

Where is the JNI documentation? #63

Closed mhewett-ks closed 4 years ago

mhewett-ks commented 5 years ago

The main README.md says that the JNI interface is described in /java/java.md but that file doesn't exist. (never mind - I found it in ffi/java/java.md)

Also, I was trying to do 'make test_java' on MacOS with Java 8 and had to add two -I statements in order to find jni.h and jni_md.h: -I/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/include/darwin

When make arrives at compiling ElgamalTest.java, it gets the following error

javac ElgamalTest.java
ElgamalTest.java:2: error: package com.herumi.mcl does not exist
import com.herumi.mcl.*;

I found com.herumi.mcl.* in mcladt. What is the relationship between mcl and mcladt?

I would like to run MCL with Java, but not on Android. Is there a way to do that?

Thanks again for your nice library.

mhewett-ks commented 5 years ago

Also, I see all of the compiled system libraries such as libmclbn384.dylib. Do I need to create another library to use BLS12_381? Ultimately, I need Fr, G1, G2, GT, hashAndMapToG2(String), mcl.mul(G2, Fr), and mcl.pairing(G1, G2) applied to BLS12_381 in Java.

herumi commented 5 years ago

I'm sorry that ffi/java supports only BN254 and is not unmaintained. I'll make a new interface, but it takes some time.

herumi commented 5 years ago

I updated ffi/java and support BLS12_381 curve. I do not write a document yet but you can see how to use it at MclTest.java.

mhewett-ks commented 4 years ago

Thank you very much for your updates.

Micheal Hewett | Senior Software Engineer

Mobile 650.743.6326 Office 650.743.6326

https://keepersecurity.com/

This email is confidential and is intended for the recipient(s) addressed herein

On Wed, Jul 3, 2019 at 5:35 PM MITSUNARI Shigeo notifications@github.com wrote:

I updated ffi/java and support BLS12_381 curve. I do not write a document yet but you can see how to use it at MclTest.java https://github.com/herumi/mcl/blob/master/ffi/java/MclTest.java.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/herumi/mcl/issues/63?email_source=notifications&email_token=AKX474P3WRMUJYIQKQQR5YLP5VAVXA5CNFSM4H2THY4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZGAB4Y#issuecomment-508297459, or mute the thread https://github.com/notifications/unsubscribe-auth/AKX474PGWZAYKRJNJ2X6J4DP5VAVXANCNFSM4H2THY4A .

mhewett-ks commented 4 years ago

FYI, the link to the Java page on the main MCL README.md links to "java/java.md" but should link to "ffi/java/java.md"

Also, the Java "check style" package I use generated the following warnings/errors for the MCL Java library:

[INFO] There are 154 errors reported by Checkstyle 6.8.1 with etc/config/checkstyle-verify.xml ruleset.

[ERROR] src/main/java/com/herumi/mcl/G1.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/G1.java[83:29] (blocks) LeftCurly: '{' should have line break after.

[ERROR] src/main/java/com/herumi/mcl/G1.java[83:75] (blocks) RightCurly: '}' should be alone on a line.

[ERROR] src/main/java/com/herumi/mcl/CipherText.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/Fr.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/Fr.java[95:29] (blocks) LeftCurly: '{' should have line break after.

[ERROR] src/main/java/com/herumi/mcl/Fr.java[95:75] (blocks) RightCurly: '}' should be alone on a line.

[ERROR] src/main/java/com/herumi/mcl/GT.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/GT.java[75:29] (blocks) LeftCurly: '{' should have line break after.

[ERROR] src/main/java/com/herumi/mcl/GT.java[75:75] (blocks) RightCurly: '}' should be alone on a line.

[ERROR] src/main/java/com/herumi/mcl/PrivateKey.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/MclConstants.java[12:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclConstants.java[13:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/Fp.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/Fp.java[95:29] (blocks) LeftCurly: '{' should have line break after.

[ERROR] src/main/java/com/herumi/mcl/Fp.java[95:75] (blocks) RightCurly: '}' should be alone on a line.

[ERROR] src/main/java/com/herumi/mcl/PublicKey.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[12:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[13:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[14:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[15:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[16:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[17:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[18:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[19:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[20:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[21:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[22:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[23:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[24:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[25:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[26:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[27:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[28:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[29:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[30:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[31:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[32:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[33:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[34:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[35:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[36:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[37:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[38:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[39:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[40:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[41:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[42:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[43:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[44:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[45:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[46:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[47:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[48:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[49:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[50:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[51:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[52:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[53:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[54:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[55:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[56:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[57:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[58:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[59:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[60:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[61:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[62:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[63:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[64:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[65:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[66:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[67:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[68:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[69:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[70:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[71:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[72:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[73:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[74:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[75:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[76:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[77:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[78:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[79:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[80:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[81:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[82:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[83:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[84:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[85:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[86:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[87:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[88:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[89:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[90:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[91:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[92:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[93:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[94:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[95:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[96:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[97:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[98:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[99:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[100:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[101:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[102:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[103:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[104:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[105:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/MclJNI.java[106:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/G2.java[24] (coding) NoFinalizer: Avoid using finalizer method.

[ERROR] src/main/java/com/herumi/mcl/G2.java[83:29] (blocks) LeftCurly: '{' should have line break after.

[ERROR] src/main/java/com/herumi/mcl/G2.java[83:75] (blocks) RightCurly: '}' should be alone on a line.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[12:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[13:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[14:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[15:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[16:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[17:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[18:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[19:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[20:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[21:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[22:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[23:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[24:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[25:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[26:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[27:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[28:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[29:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[30:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[31:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[32:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[33:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[34:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[35:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[36:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[37:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[38:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[39:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[40:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[41:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[42:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[43:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[44:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[45:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[46:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[47:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[48:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[49:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

[ERROR] src/main/java/com/herumi/mcl/ElgamalJNI.java[50:16] (modifier) ModifierOrder: 'static' modifier out of order with the JLS suggestions.

I was able to build libmcljava.dylib. The Makefile did not work at first because I am using GCC on a Mac. The file cybozu/hash.hpp

does not define template hash<> if APPLE is true, but the program SHOULD define template hash<> if using GCC.

Thanks again for the good work.

Micheal Hewett | Senior Software Engineer

Mobile 650.743.6326 Office 650.743.6326

https://keepersecurity.com/

This email is confidential and is intended for the recipient(s) addressed herein

On Mon, Jul 8, 2019 at 10:02 AM Micheal Hewett micheal@keepersecurity.com wrote:

Thank you very much for your updates.

Micheal Hewett | Senior Software Engineer

Mobile 650.743.6326 Office 650.743.6326

https://keepersecurity.com/

This email is confidential and is intended for the recipient(s) addressed herein

On Wed, Jul 3, 2019 at 5:35 PM MITSUNARI Shigeo notifications@github.com wrote:

I updated ffi/java and support BLS12_381 curve. I do not write a document yet but you can see how to use it at MclTest.java https://github.com/herumi/mcl/blob/master/ffi/java/MclTest.java.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/herumi/mcl/issues/63?email_source=notifications&email_token=AKX474P3WRMUJYIQKQQR5YLP5VAVXA5CNFSM4H2THY4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZGAB4Y#issuecomment-508297459, or mute the thread https://github.com/notifications/unsubscribe-auth/AKX474PGWZAYKRJNJ2X6J4DP5VAVXANCNFSM4H2THY4A .

herumi commented 4 years ago

Thank you for your feedback.

the link to the Java page on the main MCL README.md links to "java/java.md" but should link to "ffi/java/java.md"

I fixed it.

The Makefile did not work at first because I am using GCC on a Mac. The file cybozu/hash.hpp does not define template hash<> if APPLE is true, but the program SHOULD define template hash<> if using GCC.

I fixed it.

Also, the Java "check style" package I use generated the following warnings/errors for the MCL Java library:

com/herumi/mcl/*.java files are automatically generated by swig, so I can't change those files. Could you ignore those messages?