aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias C. Berner <tcberner@FreeBSD.org>2023-03-12 09:35:07 +0000
committerTobias C. Berner <tcberner@FreeBSD.org>2023-03-12 09:50:19 +0000
commit0656fbec64201587a96be14c3fbc7fa7697ec4b6 (patch)
tree6c77b795e09be8ebfd1cb470f0e4e12aa1b8f289
parentd196d2e2510aedbfd1134d5358ab0e961f12e964 (diff)
downloadports-0656fbec64201587a96be14c3fbc7fa7697ec4b6.tar.gz
ports-0656fbec64201587a96be14c3fbc7fa7697ec4b6.zip
security/libomemo-c: new port -- for of libsignal-protocol-c with OMEMO support
This is a fork of libsignal-protocol-c, an implementation of Signal's ratcheting forward secrecy protocol that works in synchronous and asynchronous messaging. The fork adds support for OMEMO as defined in XEP-0384 versions 0.3.0 and later. * OMEMO version 0.3.0 uses the original libsignal-protocol-c implementation with its protocol versions 2 and 3. * OMEMO version 0.4.0+ is implemented using a new protocol version 4 internally. In comparison with protocol version 3, it changes: * HKDF info strings * Protocol buffer encoding * Signature scheme (uses XEd25519 instead of custom "Curve25519 signatures") * Specification-compliant double ratchet * Support for Ed25519 public keys * Various serializations * Removes unused functionality WWW: https://github.com/dino/libomemo-c
-rw-r--r--security/Makefile1
-rw-r--r--security/libomemo-c/Makefile17
-rw-r--r--security/libomemo-c/distinfo3
-rw-r--r--security/libomemo-c/pkg-descr17
-rw-r--r--security/libomemo-c/pkg-plist19
5 files changed, 57 insertions, 0 deletions
diff --git a/security/Makefile b/security/Makefile
index 14ae5cc7a0a2..715197e17fc3 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -292,6 +292,7 @@
SUBDIR += libnitrokey
SUBDIR += libntlm
SUBDIR += libomemo
+ SUBDIR += libomemo-c
SUBDIR += liboqs
SUBDIR += libotr
SUBDIR += libotr3
diff --git a/security/libomemo-c/Makefile b/security/libomemo-c/Makefile
new file mode 100644
index 000000000000..c072f18bfa79
--- /dev/null
+++ b/security/libomemo-c/Makefile
@@ -0,0 +1,17 @@
+PORTNAME= libomemo-c
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.5.0
+CATEGORIES= security
+
+MAINTAINER= kde@FreeBSD.org
+COMMENT= Implementation of the ratcheting forward secrecy protocol
+
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= cmake
+USE_GITHUB= yes
+GH_ACCOUNT= dino
+CMAKE_ON= BUILD_SHARED_LIBS
+
+.include <bsd.port.mk>
diff --git a/security/libomemo-c/distinfo b/security/libomemo-c/distinfo
new file mode 100644
index 000000000000..40f270594966
--- /dev/null
+++ b/security/libomemo-c/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1678613499
+SHA256 (dino-libomemo-c-v0.5.0_GH0.tar.gz) = 03195a24ef7a86c339cdf9069d7f7569ed511feaf55e853bfcb797d2698ba983
+SIZE (dino-libomemo-c-v0.5.0_GH0.tar.gz) = 260987
diff --git a/security/libomemo-c/pkg-descr b/security/libomemo-c/pkg-descr
new file mode 100644
index 000000000000..d0617676a23a
--- /dev/null
+++ b/security/libomemo-c/pkg-descr
@@ -0,0 +1,17 @@
+This is a fork of libsignal-protocol-c, an implementation of Signal's
+ratcheting forward secrecy protocol that works in synchronous and asynchronous
+messaging. The fork adds support for OMEMO as defined in XEP-0384 versions
+0.3.0 and later.
+
+ * OMEMO version 0.3.0 uses the original libsignal-protocol-c implementation
+ with its protocol versions 2 and 3.
+
+ * OMEMO version 0.4.0+ is implemented using a new protocol version 4
+ internally. In comparison with protocol version 3, it changes:
+ * HKDF info strings
+ * Protocol buffer encoding
+ * Signature scheme (uses XEd25519 instead of custom "Curve25519 signatures")
+ * Specification-compliant double ratchet
+ * Support for Ed25519 public keys
+ * Various serializations
+ * Removes unused functionality
diff --git a/security/libomemo-c/pkg-plist b/security/libomemo-c/pkg-plist
new file mode 100644
index 000000000000..d49694ebed2c
--- /dev/null
+++ b/security/libomemo-c/pkg-plist
@@ -0,0 +1,19 @@
+include/omemo/curve.h
+include/omemo/hkdf.h
+include/omemo/key_helper.h
+include/omemo/protocol.h
+include/omemo/ratchet.h
+include/omemo/sender_key.h
+include/omemo/sender_key_record.h
+include/omemo/sender_key_state.h
+include/omemo/session_builder.h
+include/omemo/session_cipher.h
+include/omemo/session_pre_key.h
+include/omemo/session_record.h
+include/omemo/session_state.h
+include/omemo/signal_protocol.h
+include/omemo/signal_protocol_types.h
+lib/libomemo-c.so
+lib/libomemo-c.so.0
+lib/libomemo-c.so.0.5.0
+libdata/pkgconfig/libomemo-c.pc