Difference between revisions of "Google Summer of Code 2022"

Jump to navigation Jump to search
m (Mention Communiqué in Mellium A/V chat project)
Line 178: Line 178:
* It's assumed the UI will be used not just with Psi. So the branded parts preferably should be kept aside and instead set via API.
* It's assumed the UI will be used not just with Psi. So the branded parts preferably should be kept aside and instead set via API.
* The UI should provide next functions: model/view-based chat/group-chat, roster, avatars, statuses, recent (group-)chats, contact list (with groups/tags), contacts management, own status management.
* The UI should provide next functions: model/view-based chat/group-chat, roster, avatars, statuses, recent (group-)chats, contact list (with groups/tags), contacts management, own status management.
= PGPainless =
[https://pgpainless.org/ PGPainless] is a Java OpenPGP library. While it is not strictly an XMPP related project, it has it has its origins in GSoC and the XMPP community, since it was created as a [https://blog.jabberhead.tk/summer-of-code-2018/ Summer of Code project in 2018].
=== OpenPGP Message Parsing using Parser Generator ===
''Brief explanation:'' Enforce OpenPGP message syntax during parsing by using a Parser Generator such as JavaCC<br/>
''Involved Technologies:'' Java, Bouncy Castle, EBNF<br/>
''Relevant readings:'' [https://datatracker.ietf.org/doc/html/rfc4880 RFC4880: OpenPGP Message Format]<br/>
''Deliverables / Expected Results:''<br/>
* In the OpenPGP Interoperability Test Suite PGPainless currently fails some tests related to [https://tests.sequoia-pgp.org/#Unusual_Message_Structure unusual message structures].
* The project has the goal to improve PGPainless' score in this category by rewriting/improving the libraries' rather naive [https://github.com/pgpainless/pgpainless/blob/master/pgpainless-core/src/main/java/org/pgpainless/decryption_verification/DecryptionStreamFactory.java message parser logic].
* An ideal implementation would enforce the OpenPGP message structure syntax defined as EBNF. This could be done by using a parser generator such as [https://javacc.github.io/javacc/ JavaCC].
113

edits

Navigation menu