blob: 3d44cd3d7d4cf97b5572bdabba4c97cadfb7054d [file] [log] [blame]
Alex Gaynor99b69d92013-10-19 17:52:58 -07001Security
2========
3
Ayrxffd8d432014-06-05 17:11:59 +08004We take the security of ``cryptography`` seriously. The following are a set of
5policies we have adopted to ensure that security issues are addressed in a
6timely fashion.
7
8Reporting a security issue
9--------------------------
10
11We ask that you do not report security issues to our normal GitHub issue
12tracker.
13
14If you believe you've identified a security issue with ``cryptography``, please
15report it to ``alex.gaynor@gmail.com``. Message may be optionally be encrypted
16with PGP using key fingerprint
17``E27D 4AA0 1651 72CB C5D2 AF2B 125F 5C67 DFE9 4084``
18(this public key is available from most commonly-used key servers).
Alex Gaynor99b69d92013-10-19 17:52:58 -070019
Alex Gaynor9cd4b212014-01-10 06:54:21 -080020Once you've submitted an issue via email, you should receive an acknowledgment
Alex Gaynor99b69d92013-10-19 17:52:58 -070021within 48 hours, and depending on the action to be taken, you may receive
Alex Gaynor59075df2014-01-10 11:40:03 -080022further follow-up emails.
Ayrxffd8d432014-06-05 17:11:59 +080023
24Supported Versions
25------------------
26
27At any given time, we will provide security support for the `master`_ branch
28as well as the 2 most recent releases.
29
30Disclosure Process
31------------------
32
33Our process for taking a security issue from private discussion to public
34disclosure involves multiple steps.
35
36Approximately one week before full public disclosure, we will send advance
37notification of the issue to a list of people and organizations, primarily
38composed of operating-system vendors and other distributors of
Ayrxead04a42014-06-06 00:59:18 +080039``cryptography``. This notification will consist of an email message
40containing:
Ayrxffd8d432014-06-05 17:11:59 +080041
42* A full description of the issue and the affected versions of
43 ``cryptography``.
44* The steps we will be taking to remedy the issue.
Ayrx189f1702014-06-05 18:16:36 +080045* The patches, if any, that will be applied to ``cryptography``.
Ayrxffd8d432014-06-05 17:11:59 +080046* The date on which the ``cryptography`` team will apply these patches, issue
Alex Gaynore2f523a2014-06-05 13:09:47 -070047 new releases, and publicly disclose the issue.
Ayrxffd8d432014-06-05 17:11:59 +080048
49Simultaneously, the reporter of the issue will receive notification of the date
50on which we plan to take the issue public.
51
52On the day of disclosure, we will take the following steps:
53
Ayrx189f1702014-06-05 18:16:36 +080054* Apply the relevant patches to the ``cryptography`` repository. The commit
Ayrxffd8d432014-06-05 17:11:59 +080055 messages for these patches will indicate that they are for security issues,
56 but will not describe the issue in any detail; instead, they will warn of
57 upcoming disclosure.
Ayrx189f1702014-06-05 18:16:36 +080058* Issue the relevant releases.
Ayrxffd8d432014-06-05 17:11:59 +080059* Post a notice to the cryptography mailing list that describes the issue in
60 detail, point to the new release and crediting the reporter of the issue.
61
62If a reported issue is believed to be particularly time-sensitive due to a
63known exploit in the wild, for example the time between advance notification
64and public disclosure may be shortened considerably.
65
66The list of people and organizations who receives advanced notification of
67security issues is not and will not be made public. This list generally
68consists of high profile downstream distributors and is entirely at the
69discretion of the ``cryptography`` team.
70
71.. _`master`: https://github.com/pyca/cryptography