Skip to content

Commit

Permalink
Oberon java (#193)
Browse files Browse the repository at this point in the history
  • Loading branch information
fundthmcalculus committed Oct 8, 2021
1 parent 3686ded commit 10c6bdb
Show file tree
Hide file tree
Showing 7 changed files with 8,128 additions and 7 deletions.
4 changes: 2 additions & 2 deletions devops/CompileProtoFiles.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,8 @@ function Update-Ruby()
function Update-Swift()
{
protoc $( Get-ProtoPath ) `
'--swift_out="../swift/Okapi/Sources/OkapiSwift/proto' `
'--swift_opt=Visibility=Public' `
--swift_out="../swift/Okapi/Sources/OkapiSwift/proto" `
--swift_opt="Visibility=Public" `
$( Get-ProtoFiles )
}

Expand Down
2 changes: 1 addition & 1 deletion java/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ plugins {
def jarDomainId = "id"
def jarGroupId = "trinsic"
def jarArtifactId = "okapi"
def jarVersion = "0.1.6"
def jarVersion = "0.1.7"

publishing {
repositories {
Expand Down
58 changes: 58 additions & 0 deletions java/src/main/java/Oberon.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
import com.google.protobuf.InvalidProtocolBufferException;
import trinsic.okapi.Security;

public class Oberon extends OkapiNative {
public static Security.CreateOberonKeyResponse createKey(Security.CreateOberonKeyRequest request) throws DidException, InvalidProtocolBufferException {
var requestBuffer = messageToBuffer(request);
var responseBuffer = new OkapiByteBuffer();
var errBuffer = new ExternError();
getNativeLibrary().oberon_create_key(requestBuffer, responseBuffer, errBuffer);
errBuffer.RaiseError();
return Security.CreateOberonKeyResponse.parseFrom(bufferToByteArray(responseBuffer));
}

public static Security.CreateOberonTokenResponse createToken(Security.CreateOberonTokenRequest request) throws DidException, InvalidProtocolBufferException {
var requestBuffer = messageToBuffer(request);
var responseBuffer = new OkapiByteBuffer();
var errBuffer = new ExternError();
getNativeLibrary().oberon_create_token(requestBuffer, responseBuffer, errBuffer);
errBuffer.RaiseError();
return Security.CreateOberonTokenResponse.parseFrom(bufferToByteArray(responseBuffer));
}

public static Security.BlindOberonTokenResponse blindToken(Security.BlindOberonTokenRequest request) throws DidException, InvalidProtocolBufferException {
var requestBuffer = messageToBuffer(request);
var responseBuffer = new OkapiByteBuffer();
var errBuffer = new ExternError();
getNativeLibrary().oberon_blind_token(requestBuffer, responseBuffer, errBuffer);
errBuffer.RaiseError();
return Security.BlindOberonTokenResponse.parseFrom(bufferToByteArray(responseBuffer));
}

public static Security.UnBlindOberonTokenResponse unBlindToken(Security.UnBlindOberonTokenRequest request) throws DidException, InvalidProtocolBufferException {
var requestBuffer = messageToBuffer(request);
var responseBuffer = new OkapiByteBuffer();
var errBuffer = new ExternError();
getNativeLibrary().oberon_unblind_token(requestBuffer, responseBuffer, errBuffer);
errBuffer.RaiseError();
return Security.UnBlindOberonTokenResponse.parseFrom(bufferToByteArray(responseBuffer));
}

public static Security.CreateOberonProofResponse createProof(Security.CreateOberonProofRequest request) throws DidException, InvalidProtocolBufferException {
var requestBuffer = messageToBuffer(request);
var responseBuffer = new OkapiByteBuffer();
var errBuffer = new ExternError();
getNativeLibrary().oberon_create_proof(requestBuffer, responseBuffer, errBuffer);
errBuffer.RaiseError();
return Security.CreateOberonProofResponse.parseFrom(bufferToByteArray(responseBuffer));
}

public static Security.VerifyOberonProofResponse verifyProof(Security.VerifyOberonProofRequest request) throws DidException, InvalidProtocolBufferException {
var requestBuffer = messageToBuffer(request);
var responseBuffer = new OkapiByteBuffer();
var errBuffer = new ExternError();
getNativeLibrary().oberon_verify_proof(requestBuffer, responseBuffer, errBuffer);
errBuffer.RaiseError();
return Security.VerifyOberonProofResponse.parseFrom(bufferToByteArray(responseBuffer));
}
}
12 changes: 12 additions & 0 deletions java/src/main/java/OkapiNative.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,18 @@ public interface IOkapiC extends com.sun.jna.Library {

int ldproofs_verify_proof(OkapiByteBuffer.ByValue request, OkapiByteBuffer response, ExternError err);

int oberon_create_key(OkapiByteBuffer.ByValue request, OkapiByteBuffer response, ExternError err);

int oberon_create_token(OkapiByteBuffer.ByValue request, OkapiByteBuffer response, ExternError err);

int oberon_blind_token(OkapiByteBuffer.ByValue request, OkapiByteBuffer response, ExternError err);

int oberon_unblind_token(OkapiByteBuffer.ByValue request, OkapiByteBuffer response, ExternError err);

int oberon_create_proof(OkapiByteBuffer.ByValue request, OkapiByteBuffer response, ExternError err);

int oberon_verify_proof(OkapiByteBuffer.ByValue request, OkapiByteBuffer response, ExternError err);

void didcomm_byte_buffer_free(OkapiByteBuffer.ByValue v);

void didcomm_string_free(com.sun.jna.ptr.ByteByReference s);
Expand Down
14 changes: 10 additions & 4 deletions java/src/main/java/trinsic/okapi/Examples.java

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 10c6bdb

Please sign in to comment.