README.md
author Krista 'DarthMama' Bennett <krista@pep.foundation>
Mon, 22 Jun 2020 23:46:21 +0200
changeset 4757 f5f8da7627e9
parent 4394 e5aac7a91341
permissions -rw-r--r--
Merged in ENGINE-757
damiano@2008
     1
<!-- Copyright 2015-2017, pEp foundation, Switzerland
damiano@2008
     2
This file is part of the pEp Engine
damiano@2008
     3
This file may be used under the terms of the Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) License
damiano@2008
     4
See CC_BY-SA.txt -->
vb@1513
     5
damiano@2008
     6
# What is the p≡p Engine?
damiano@2008
     7
The p≡p Engine is a Free Software library encapsulating implementations of:
vb@447
     8
vb@447
     9
- Key Management
vb@447
    10
damiano@2008
    11
  Key Management in the p≡p Engine is based on GnuPG key chains (NetPGP on iOS).
damiano@2008
    12
  Keys are stored in an OpenPGP-compatible format, and can be used for different crypto implementations.
vb@447
    13
vb@447
    14
- Trust Rating
vb@447
    15
damiano@2008
    16
  The p≡p Engine sports a two phase trust rating system for messages:
damiano@2008
    17
  In phase one a rating is derived based on channel, crypto and key security.
damiano@2008
    18
  This is named "comm\_types".
damiano@2008
    19
  In phase two these ratings are mapped to user-representable values mimicking the semantics of a traffic light.
vb@447
    20
vb@447
    21
- Abstract Crypto API
vb@447
    22
damiano@2008
    23
  The Abstract Crypto API provides functions to encrypt and decrypt data or full messages, without requiring an application programmer to understand the different applied formats and standards.
vb@447
    24
vb@447
    25
- Message Transports
vb@447
    26
damiano@2008
    27
  The p≡p Engine will sport a growing list of message transports, to support any widespread text-based messaging system such as E-Mail, SMS, XMPP and many more.
vb@447
    28
damiano@2008
    29
The p≡p Engine is written in C99 and is expected to run on any platform that conforms to the SUS/POSIX specification.
damiano@2008
    30
Selected non-SUS platforms are supported as well (such as Microsoft Windows).
vb@447
    31
damiano@2008
    32
# How can I use the p≡p Engine?
damiano@2008
    33
Build instructions can be found in the "doc/" subfolder in this repository.
damiano@2008
    34
The p≡p Engine is not meant to be used in application code directly.
damiano@2008
    35
Instead, the p≡p Engine is meant to be used in conjunction with a so-called "adapter".
damiano@2008
    36
An adapter provides an API in a programming language that best accomodates developers in their respective software development ecosystem.
damiano@2008
    37
So, for example, a Java Native Interface adapter exists for development of apps for the Android mobile operating system, or a .NET adapter exists for development of applications on Microsoft Windows.
damiano@2008
    38
Various adapters are also available at the link provided for the p≡p Engine's code above.
vb@447
    39
damiano@2008
    40
# What is the current state of the project?
damiano@2008
    41
The p≡p Engine is production-ready.
damiano@2008
    42
It is under active development by several full-time employees of the p≡p foundation and its partner organizations.
vb@4393
    43
The most recent version of the source code can be obtained here: <https://pep.foundation/dev/repos>.
damiano@2008
    44
This is the only offical way to obtain a copy of the source code.
vb@448
    45
damiano@2008
    46
# I would like to contribute to the p≡p Engine or a realated project, where do I start?
vb@4394
    47
First of all, excellent! You can find further information here: <https://contribution.pep.foundation/>
vb@448
    48
damiano@2008
    49
# Legal notes
vb@4394
    50
The p≡p Engine is Copyright 2015-2020 by p≡p foundation, Switzerland.
damiano@2008
    51
The source code of the p≡p Engine is licensed under the terms of the GNU General Public License version 3.
damiano@2008
    52
Accompanying documentation is licensed under the terms of the Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) License.
damiano@2008
    53
Each file includes a notice near its beginning, that indicates the applicable license.
damiano@2008
    54
If you wish to license the p≡p Engine under different terms, please contact <mailto:council@pep.foundation>.
vb@448
    55
krista@4221
    56
_pEp_reallocarray in pgp_sequoia.c is reallocarray from the OpenBSD source. It is 
krista@4221
    57
copyright (c) 2008 Otto Moerbeek <otto@drijf.net> with the following permissions: 
krista@4221
    58
Permission to use, copy, modify, and distribute this software for any
krista@4221
    59
purpose with or without fee is hereby granted, provided that the above
krista@4221
    60
copyright notice and this permission notice appear in all copies.
krista@4221
    61
damiano@2008
    62
# Contact
damiano@2008
    63
The p≡p foundation and the developers of the p≡p Engine can be reached as detailed here: <https://pep.foundation/contact-us/index.html>.