17 Commits

Author SHA1 Message Date
kaichaosun
4f74926ad6
chore: install rust 2026-02-03 11:05:54 +08:00
kaichaosun
36ef22b84d
chore: add cargo to start 2026-02-03 11:03:23 +08:00
kaichaosun
6d21499477
chore: improve default task run command 2026-01-30 15:59:12 +08:00
kaichaosun
93af906ea9
feat: use just for quick tasks. 2026-01-30 15:56:51 +08:00
Jazz Turner-Baggs
5a98258ff1
Implement Content::send_content (#31)
* Implement Content::send_content

* rename stamp fn
2026-01-29 08:36:18 -08:00
kaichao
10940321ff
Encode ratchet sate for serialization (#20)
* feat: costom encode for double ratchet

* chore: correct capacity

* chore: refactor reference

* chore: reader for parse bytes

* chore: extract reader

* chore: example with persist state.

* chore: update example

* chore: implement serde compatibility.

* chore: as_bytes

* chore: zerorize the secrec material

* chore: use as_types to return reference for static key.

* chore: extract example from basic demo
2026-01-29 09:19:52 +08:00
Jazz Turner-Baggs
1f0354f8e2
Add FFI functions for send_content and handle_payload (#29)
* Add api calls for handle_payload and send_content

* Add handle_payload and send_content to FFI
2026-01-28 10:50:41 -08:00
Jazz Turner-Baggs
1cb1ffc996
Nim FFI Wrapper for LibChat (#25)
* remove unneeded code

* Update comment style

* Update Nim side to support safer_ffi

* Fix Introduction from impl

* Updates
2026-01-28 10:38:08 -08:00
Jazz Turner-Baggs
15bb395475
Rust API - conversation creation (#24)
* Adds final changes for rust side API

* Add Safer_ffi impl

* Simplify api

* Add const handle offset
2026-01-28 09:59:07 -08:00
kaichao
8e2b5211b4
Managed data storage for Ratchet state (#21)
* feat: managed persist storage with sqlite

* chore: sync skipped keys

* chore: refactor

* chore: refactor

* chore: clean code

* chore: export skipped keys from state.

* chore: renaming data to record

* chore: remove types from stroage mod file
2026-01-28 14:54:16 +08:00
Jazz Turner-Baggs
4b1069a4a8
Use PayloadData for outbound datatype (#23)
* Add Introductions (#22)

* Move to Payload data

* compute delivery_address
2026-01-27 16:17:04 -08:00
Jazz Turner-Baggs
d40e72be9b
Add Introductions (#22) 2026-01-26 08:53:44 -08:00
Jazz Turner-Baggs
fe23c39321
PrivateV1 Convo Initialization via Inbox (#13)
* Load orginal protofiles

* Change package name

* Add prost generation

* Remove placeholders

* Add generated files + imports

* replace with chat-proto

* Add XK0

* auto formatting

* Initial implementation of PrivateV1 initialization

* Add ConvoFactory trait

* Hook up indentity placeholder

* Remove RemoteInbox until it’s needed

* Simplify Identity ownership

* Clean up x3handshake

* Move inbox encryption

* Simplify inbox encryption

* Cleanup warnings

* Add todos

* Update chat-proto crate

* Publickey Handling

* Reorg Inbox handshake

* Update Inbox convoId

* Remove file structure headers

* Update ConvoID

* Add Domain Separator trait

* Remove Convo trait functions

* Rename Context

* Add SecretKey

* Add workspace dependency

* update KE name

* Update comments for clarity

* Remove Xk0 references

* Bump chat_proto version and relock
2026-01-21 15:39:09 -08:00
kaichao
58392841cd
Double ratchet FFI usage in Nim (#14)
* feat: ffi

* feat: ffi interface and header generation

* feat: nim ffi example

* chore: doc

* fix: encrypt state clean

* chore: zeroize when drop
2026-01-21 17:24:20 +08:00
kaichao
fc76453f4c
Implement double ratchet (#9) 2026-01-15 08:47:02 +08:00
Jazz Turner-Baggs
04d6f8a84b
Add Project scaffolding (#1) 2025-12-22 09:40:46 -08:00
Jazz Turner-Baggs
afefa3c5a2
Initial commit 2025-12-20 22:34:08 -08:00