{"id":23158741,"url":"https://github.com/greendelta/olca-license","last_synced_at":"2026-02-22T00:02:53.329Z","repository":{"id":81686830,"uuid":"587654100","full_name":"GreenDelta/olca-license","owner":"GreenDelta","description":"A data library licensing framework for openLCA.","archived":false,"fork":false,"pushed_at":"2024-09-17T14:59:05.000Z","size":190,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-31T21:19:49.614Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GreenDelta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-01-11T09:09:17.000Z","updated_at":"2024-09-17T14:59:09.000Z","dependencies_parsed_at":"2023-08-14T12:43:37.758Z","dependency_job_id":"3c273283-190d-4398-ab03-cbe9b0d1afe3","html_url":"https://github.com/GreenDelta/olca-license","commit_stats":{"total_commits":34,"total_committers":3,"mean_commits":"11.333333333333334","dds":"0.11764705882352944","last_synced_commit":"463e95f4255028854fa4607fed3154c2f1f8795b"},"previous_names":["greendelta/olca-license"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/GreenDelta/olca-license","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-license","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-license/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-license/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-license/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GreenDelta","download_url":"https://codeload.github.com/GreenDelta/olca-license/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-license/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262924944,"owners_count":23385457,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-17T22:27:23.560Z","updated_at":"2025-10-23T07:31:48.514Z","avatar_url":"https://github.com/GreenDelta.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# olca-license\n\nA licensing framework for openLCA that can certify, sign and encrypt data library.\n\n## Create the Certificate Authority (CA)\n\n- Create the Root CA - that has to later be stored offline - with `root_ca.sh`.\n- Create the server CA (Nexus) subordinated from the Root CA with\n  `nexus_ca.sh` and store the `nexus-ca` folder into the server\n  `/etc/ssl/certs/` directory.\n\n## Certify a data library\n\nOnce the certificate authority is created and stored in the server, one can\nstart certifying data libraries.\n\nFirst, create a `Licensor` instance with the CA `File` folder as an input:\n\n```java\nvar ca = new File(\"path/to/the/certificate/authority\");\nvar licensor = Licensor.getInstance(ca);\n```\n\nThen, certify the library by inputting the `ZipInputStream` of the compressed\nraw library, the destination `ZipOutputStream`, the password provided by the\nuser of the library and the `CertificateInfo` object holding the start and\nexpiration date and the subject and issuer information:\n\n```java\nvar info = licensor.createCertificateInfo(notBefore, notAfter, subject);\ntry (var output = new ZipOutputStream(new FileOutputStream(library))) {\n    licensor.license(input, output, PASSWORD_LIB, info);\n}\n```\nIf the end date of the certificate is not determined, it is possible to omit it:\n\n```java\nvar info = licensor.createCertificateInfo(notBefore, subject);\n```\n\n\n## Check the information of an issued certificate\n\nAn X.509 certificate can be stored with respect with the industry standard as a\nkey encoded in `Base64`:\n\n```bash\n-----BEGIN CERTIFICATE-----\n\u003ccertificate key\u003e\n-----END CERTIFICATE-----\n```\n\nThis certificate can be converted in a more readable format by using the\nfollowing command:\n\n```bash\nopenssl x509 -text -in issued-cert.crt -noout\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreendelta%2Folca-license","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgreendelta%2Folca-license","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreendelta%2Folca-license/lists"}