Security News
Introducing the Socket Python SDK
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
A simple python tool for creating certificate authorities and certificates on the fly.
Certipy was made to simplify the certificate creation process. To that end, Certipy exposes methods for creating and managing certificate authorities, certificates, signing and building trust bundles. Behind the scenes Certipy:
Creating a certificate authority:
Certipy defaults to writing certs and certipy.json into a folder called out
in your current directory.
$ certipy foo
FILES {'ca': '', 'cert': 'out/foo/foo.crt', 'key': 'out/foo/foo.key'}
IS_CA True
SERIAL 0
SIGNEES None
PARENT_CA
Creating and signing a key-cert pair:
$ certipy bar --ca-name foo
FILES {'ca': 'out/foo/foo.crt', 'key': 'out/bar/bar.key', 'cert': 'out/bar/bar.crt'}
IS_CA False
SERIAL 0
SIGNEES None
PARENT_CA foo
Removal:
certipy --rm bar
Deleted:
FILES {'ca': 'out/foo/foo.crt', 'key': 'out/bar/bar.key', 'cert': 'out/bar/bar.crt'}
IS_CA False
SERIAL 0
SIGNEES None
PARENT_CA foo
Creating a certificate authority:
from certipy import Certipy
certipy = Certipy(store_dir='/tmp')
certipy.create_ca('foo')
record = certipy.store.get_record('foo')
Creating and signing a key-cert pair:
certipy.create_signed_pair('bar', 'foo')
record = certipy.store.get_record('bar')
Creating trust:
certipy.create_ca_bundle('ca-bundle.crt')
# or to trust specific certs only:
certipy.create_ca_bundle_for_names('ca-bundle.crt', ['bar'])
Removal:
record = certipy.remove_files('bar')
Records are dicts with the following structure:
{
'serial': 0,
'is_ca': true,
'parent_ca': 'ca_name',
'signees': {
'signee_name': 1
},
'files': {
'key': 'path/to/key.key',
'cert': 'path/to/cert.crt',
'ca': 'path/to/ca.crt',
}
}
The signees
will be empty for non-CA certificates. The signees
field
is stored as a python Counter
. These relationships are used to build trust
bundles.
Information in Certipy is generally passed around as records which point to
actual files. For most _record
methods, there are generally equivalent
_file
methods that operate on files themselves. The former will only affect
records in Certipy's store and the latter will affect both (something happens
to the file, the record for it should change, too).
Certipy is released under BSD license. For more details see the LICENSE file.
LLNL-CODE-754897
FAQs
Utility to create and sign CAs and certificates
We found that certipy demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
Security News
Floating dependency ranges in npm can introduce instability and security risks into your project by allowing unverified or incompatible versions to be installed automatically, leading to unpredictable behavior and potential conflicts.
Security News
A new Rust RFC proposes "Trusted Publishing" for Crates.io, introducing short-lived access tokens via OIDC to improve security and reduce risks associated with long-lived API tokens.