Prepare first beta release

pull/17/merge
Richard Körber 2015-12-24 16:31:37 +01:00
parent fefc71b21f
commit a5eb3263fe
2 changed files with 10 additions and 16 deletions

View File

@ -8,32 +8,26 @@ This Java client helps connecting to an ACME server, and performing all necessar
It is an independent open source implementation that is not affiliated with or endorsed by _Let's Encrypt_.
## Alpha Release!
Please note that even though _acme4j_ is already usable, it is currently in an early alpha state. This means that:
* _acme4j_ is not feature complete yet (see the "Missing" section below).
* The API is not stable. It may change in a manner not compatible to previous versions and without prior notice.
* _acme4j_ could still have major bugs.
As _Let's Encrypt_ is currently in public beta, some of the ACME services may be restricted or not yet available.
The ACME specifications are in draft status and subject to change.
## Features
* Easy to use Java API
* Requires JRE 7 or higher
* Built with maven (package will be made available at Maven Central as soon as beta state is reached)
* Built with maven, packages available at Maven Central soon
* Small, only requires [jose4j](https://bitbucket.org/b_c/jose4j/wiki/Home) and [slf4j](http://www.slf4j.org/) as dependencies
* Extensive unit tests
## Usage
See the [online documentation](http://www.shredzone.org/maven/acme4j/) for how to use _acme4j_. Or just have a look at [the source code of an example](https://github.com/shred/acme4j/blob/master/acme4j-example/src/main/java/org/shredzone/acme4j/ClientTest.java).
* See the [online documentation](http://www.shredzone.org/maven/acme4j/) about how to use _acme4j_.
* For a quick start, have a look at [the source code of an example](https://github.com/shred/acme4j/blob/master/acme4j-example/src/main/java/org/shredzone/acme4j/ClientTest.java).
## Beta Release
Please note that _acme4j_ is currently in beta state. The API may still change without prior notice, but I try to keep the changes minimal.
As _Let's Encrypt_ is currently in public beta, some of the ACME services may be restricted or [not implemented](https://github.com/letsencrypt/boulder/wiki/TODO). Also see the [_acme4j_ bug tracker](https://github.com/shred/acme4j/issues) for missing or untested features.
The [ACME specifications](https://github.com/ietf-wg-acme/acme) are not finalized yet. The _acme4j_ API may change as features are added to, and other features removed from the specifications.
## Contribute

View File

@ -1,6 +1,6 @@
# Proof of Possession
With the Proof of Possesion challenge, you prove to the CA that you are able to provide a verification document that is signed with a key that is known to the server. The main purpose of this challenge is to transfer the control of a domain to your account.
With the Proof of Possesion challenge, you prove to the CA that you are able to provide a verification document that is signed with a key that is known to the server. The main purpose of this challenge is to transfer the authorization of a domain to your account.
The challenge object contains a list of `X509Certificate`s that are already known to the CA:
@ -14,7 +14,7 @@ In the next step, the _current owner of the domain_ authorizes the challenge, by
```java
Account ownerAccount = ... // Account of the domain owner
KeyPair domainKeyPair = ... // Key pair matching a certificates
KeyPair domainKeyPair = ... // Key pair matching a certificate
String domain = ... // Domain to authorize
challenge.authorize(ownerAccount, domainKeyPair, domain);