@@ -51,28 +51,26 @@ cmake --build liboqs/build --parallel 8
5151cmake --build liboqs/build --target install
5252```
5353
54- The last line may require prefixing it by ` sudo ` on UNIX-like systems.
55- Change ` --parallel 8 ` to match the number of available cores on your system.
54+ The last line may require prefixing it by ` sudo ` on UNIX-like systems. Change ` --parallel 8 ` to match the number of
55+ available cores on your system.
5656
57- On UNIX-like platforms, you may need to set
58- the ` LD_LIBRARY_PATH ` (` DYLD_LIBRARY_PATH ` on macOS) environment variable to
57+ On UNIX-like platforms, you may need to set the ` LD_LIBRARY_PATH ` (` DYLD_LIBRARY_PATH ` on macOS) environment variable to
5958point to the path to liboqs' library directory, e.g.,
6059
6160``` shell
6261export LD_LIBRARY_PATH=$LD_LIBRARY_PATH :/usr/local/lib
6362```
6463
65- On Windows platforms, ** you must ensure** that the liboqs shared
66- library ` oqs.dll ` is visible system-wide, and that the following environment
67- variable are being set. Use the "Edit the system environment variables" Control
68- Panel tool or execute in a Command Prompt, e.g.,
64+ On Windows platforms, ** you must ensure** that the liboqs shared library ` oqs.dll ` is visible system-wide, and that the
65+ following environment variable are being set. Use the "Edit the system environment variables" Control Panel tool or
66+ execute in a Command Prompt, e.g.,
6967
7068``` shell
7169set PATH=%PATH%; C:\P rogram Files (x86)\l iboqs\b in
7270```
7371
74- You can change liboqs' installation directory by configuring the build to use an
75- alternative path, e.g., ` C:\liboqs ` , by replacing the first CMake line above by
72+ You can change liboqs' installation directory by configuring the build to use an alternative path, e.g., ` C:\liboqs ` , by
73+ replacing the first CMake line above by
7674
7775``` shell
7876cmake -S liboqs -B liboqs/build -DCMAKE_INSTALL_PREFIX=" C:\liboqs" -DBUILD_SHARED_LIBS=ON
10098venv\S cripts\a ctivate.bat
10199```
102100
103- ### Install the wrapper
101+ ### Configure and install the wrapper
104102
105103Execute in a Terminal/Console/Administrator Command Prompt
106104
@@ -132,6 +130,12 @@ nose2 --verbose liboqs-python
132130
133131## Usage in standalone applications
134132
133+ liboqs-python can be imported into Python programs with
134+
135+ ``` python
136+ import oqs
137+ ```
138+
135139liboqs-python defines two main classes: ` KeyEncapsulation ` and ` Signature ` , providing post-quantum key encapsulation and
136140signture mechanisms, respectively. Each must be instantiated with a string identifying one of mechanisms supported by
137141liboqs; these can be enumerated using the ` get_enabled_KEM_mechanisms() ` and ` get_enabled_sig_mechanisms() ` functions.
@@ -152,8 +156,6 @@ Prompt
152156set PYTHONPATH=%PYTHONPATH%; C:\p ath\t o\l iboqs-python
153157```
154158
155- As any python module, liboqs wrapper components can be imported into python programs with ` import oqs ` .
156-
157159---
158160
159161## Docker
@@ -179,51 +181,51 @@ Or, run the unit tests with
179181docker run -it oqs-python sh -c " . venv/bin/activate && nose2 --verbose liboqs-python"
180182```
181183
184+ In case you want to use the Docker container as development environment, mount your current project in the Docker
185+ container with
186+
187+ ``` shell
188+ docker run --rm -it --workdir=/app -v ${PWD} :/app oqs-python /bin/bash
189+ ```
190+
182191A more comprehensive Docker example is provided in the
183192directory [ ` docker ` ] ( https://github.com/open-quantum-safe/liboqs-python/tree/main/docker ) .
184193
185194---
186195
187196## Limitations and security
188197
189- liboqs is designed for prototyping and evaluating quantum-resistant
190- cryptography. Security of proposed quantum-resistant algorithms may rapidly
191- change as research advances, and may ultimately be completely insecure against
192- either classical or quantum computers.
198+ liboqs is designed for prototyping and evaluating quantum-resistant cryptography. Security of proposed quantum-resistant
199+ algorithms may rapidly change as research advances, and may ultimately be completely insecure against either classical
200+ or quantum computers.
193201
194- We believe that the NIST Post-Quantum Cryptography standardization project is
195- currently the best avenue to identifying potentially quantum-resistant
196- algorithms. liboqs does not intend to "pick winners", and we strongly recommend
197- that applications and protocols rely on the outcomes of the NIST standardization
198- project when deploying post-quantum cryptography.
202+ We believe that the NIST Post-Quantum Cryptography standardization project is currently the best avenue to identifying
203+ potentially quantum-resistant algorithms. liboqs does not intend to "pick winners", and we strongly recommend that
204+ applications and protocols rely on the outcomes of the NIST standardization project when deploying post-quantum
205+ cryptography.
199206
200- We acknowledge that some parties may want to begin deploying post-quantum
201- cryptography prior to the conclusion of the NIST standardization project. We
202- strongly recommend that any attempts to do make use of so-called ** hybrid
203- cryptography** , in which post-quantum public-key algorithms are used alongside
204- traditional public key algorithms (like RSA or elliptic curves) so that the
205- solution is at least no less secure than existing traditional cryptography.
207+ We acknowledge that some parties may want to begin deploying post-quantum cryptography prior to the conclusion of the
208+ NIST standardization project. We strongly recommend that any attempts to do make use of so-called
209+ ** hybrid cryptography** , in which post-quantum public-key algorithms are used alongside traditional public key
210+ algorithms (like RSA or elliptic curves) so that the solution is at least no less secure than existing traditional
211+ cryptography.
206212
207213Just like liboqs, liboqs-python is provided "as is", without warranty of any kind.
208- See [ LICENSE] ( https://github.com/open-quantum-safe/liboqs-python/blob/main/LICENSE )
209- for the full disclaimer.
214+ See [ LICENSE] ( https://github.com/open-quantum-safe/liboqs-python/blob/main/LICENSE ) for the full disclaimer.
210215
211216---
212217
213218## License
214219
215220liboqs-python is licensed under the MIT License;
216- see [ LICENSE] ( https://github.com/open-quantum-safe/liboqs-python/blob/main/LICENSE )
217- for details.
221+ see [ LICENSE] ( https://github.com/open-quantum-safe/liboqs-python/blob/main/LICENSE ) for details.
218222
219223---
220224
221225## Team
222226
223- The Open Quantum Safe project is led
224- by [ Douglas Stebila] ( https://www.douglas.stebila.ca/research/ )
225- and [ Michele Mosca] ( http://faculty.iqc.uwaterloo.ca/mmosca/ ) at the University
226- of Waterloo.
227+ The Open Quantum Safe project is led by [ Douglas Stebila] ( https://www.douglas.stebila.ca/research/ )
228+ and [ Michele Mosca] ( http://faculty.iqc.uwaterloo.ca/mmosca/ ) at the University of Waterloo.
227229
228230### Contributors
229231
@@ -238,14 +240,12 @@ Contributors to the liboqs-python wrapper include:
238240
239241## Support
240242
241- Financial support for the development of Open Quantum Safe has been provided by
242- Amazon Web Services and the Canadian Centre for Cyber Security.
243+ Financial support for the development of Open Quantum Safe has been provided by Amazon Web Services and the Canadian
244+ Centre for Cyber Security.
243245
244- We'd like to make a special acknowledgement to the companies who have dedicated
245- programmer time to contribute source code to OQS, including Amazon Web Services,
246- evolutionQ, softwareQ, and Microsoft Research.
246+ We'd like to make a special acknowledgement to the companies who have dedicated programmer time to contribute source
247+ code to OQS, including Amazon Web Services, evolutionQ, softwareQ, and Microsoft Research.
247248
248- Research projects which developed specific components of OQS have been supported
249- by various research grants, including funding from the Natural Sciences and
250- Engineering Research Council of Canada (NSERC); see the source papers for
251- funding acknowledgments.
249+ Research projects which developed specific components of OQS have been supported by various research grants, including
250+ funding from the Natural Sciences and Engineering Research Council of Canada (NSERC); see the source papers for funding
251+ acknowledgments.
0 commit comments