blob: cd96d582a05b7d9c4dce5b811dda1b7ca37ae209 [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
39``cryptography``. This notification will consist of an email message,
40
41* A full description of the issue and the affected versions of
42 ``cryptography``.
43* The steps we will be taking to remedy the issue.
44* The patch(es), if any, that will be applied to ``cryptography``.
45* The date on which the ``cryptography`` team will apply these patches, issue
46 new releases and publicly disclose the issue.
47
48Simultaneously, the reporter of the issue will receive notification of the date
49on which we plan to take the issue public.
50
51On the day of disclosure, we will take the following steps:
52
53* Apply the relevant patch(es) to the ``cryptography`` codebase. The commit
54 messages for these patches will indicate that they are for security issues,
55 but will not describe the issue in any detail; instead, they will warn of
56 upcoming disclosure.
57* Issue the relevant release(s).
58* Post a notice to the cryptography mailing list that describes the issue in
59 detail, point to the new release and crediting the reporter of the issue.
60
61If a reported issue is believed to be particularly time-sensitive due to a
62known exploit in the wild, for example the time between advance notification
63and public disclosure may be shortened considerably.
64
65The list of people and organizations who receives advanced notification of
66security issues is not and will not be made public. This list generally
67consists of high profile downstream distributors and is entirely at the
68discretion of the ``cryptography`` team.
69
70.. _`master`: https://github.com/pyca/cryptography