diff --git a/.cargo_vcs_info.json b/.cargo_vcs_info.json
index ff0e9a2..923d411 100644
--- a/.cargo_vcs_info.json
+++ b/.cargo_vcs_info.json
@@ -1,5 +1,5 @@
 {
   "git": {
-    "sha1": "3b34fad1c1c5a63cb8231b8fe266f8c5c3d4fdb1"
+    "sha1": "e1a07bd01119e16105bce07a506b08fef59eb561"
   }
 }
diff --git a/Android.bp b/Android.bp
index 61eec7a..a7e2ebf 100644
--- a/Android.bp
+++ b/Android.bp
@@ -1,8 +1,6 @@
 // This file is generated by cargo2android.py --config cargo2android.json.
 // Do not modify this file as changes will be overridden on upgrade.
 
-
-
 package {
     default_applicable_licenses: ["external_rust_crates_oid-registry_license"],
 }
diff --git a/Cargo.toml b/Cargo.toml
index 5b537b8..4028005 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -13,7 +13,7 @@
 [package]
 edition = "2018"
 name = "oid-registry"
-version = "0.1.4"
+version = "0.1.5"
 authors = ["Pierre Chifflier <chifflier@wzdftpd.net>"]
 build = "build.rs"
 include = ["LICENSE-*", "README.md", ".gitignore", "Cargo.toml", "assets/*.txt", "build.rs", "src/*.rs"]
diff --git a/Cargo.toml.orig b/Cargo.toml.orig
index 0235cdf..4e6a567 100644
--- a/Cargo.toml.orig
+++ b/Cargo.toml.orig
@@ -1,6 +1,6 @@
 [package]
 name = "oid-registry"
-version = "0.1.4"
+version = "0.1.5"
 authors = ["Pierre Chifflier <chifflier@wzdftpd.net>"]
 license = "MIT/Apache-2.0"
 description = "Object Identifier (OID) database"
diff --git a/METADATA b/METADATA
index 0ed645b..334a124 100644
--- a/METADATA
+++ b/METADATA
@@ -7,14 +7,13 @@
   }
   url {
     type: ARCHIVE
-    value: "https://static.crates.io/crates/oid-registry/oid-registry-0.1.4.crate"
+    value: "https://static.crates.io/crates/oid-registry/oid-registry-0.1.5.crate"
   }
-  version: "0.1.4"
-  # Dual-licensed, using the least restrictive per go/thirdpartylicenses#same.
+  version: "0.1.5"
   license_type: NOTICE
   last_upgrade_date {
     year: 2021
-    month: 7
-    day: 16
+    month: 8
+    day: 9
   }
 }
diff --git a/assets/oid_db.txt b/assets/oid_db.txt
index 32540f0..68591f4 100644
--- a/assets/oid_db.txt
+++ b/assets/oid_db.txt
@@ -12,6 +12,9 @@
 x962	OID_SIG_ECDSA_WITH_SHA224	1.2.840.10045.4.3.1	ecdsa-with-SHA224	Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 224 (SHA224) algorithm
 x962	OID_SIG_ECDSA_WITH_SHA256	1.2.840.10045.4.3.2	ecdsa-with-SHA256	Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 256 (SHA256) algorithm
 x962	OID_SIG_ECDSA_WITH_SHA384	1.2.840.10045.4.3.3	ecdsa-with-SHA384	Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 384 (SHA384) algorithm
+x962	OID_SIG_ECDSA_WITH_SHA512	1.2.840.10045.4.3.4	ecdsa-with-SHA512	Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 512 (SHA512) algorithm
+
+x962	OID_EC_P256	1.2.840.10045.3.1.7	prime256v1	P-256 elliptic curve parameter
 
 pkcs1	OID_PKCS1_RSAENCRYPTION	1.2.840.113549.1.1.1	rsaEncryption	RSAES-PKCS1-v1_5 encryption scheme
 pkcs1	OID_PKCS1_MD2WITHRSAENC	1.2.840.113549.1.1.2	md2WithRSAEncryption	MD2 with RSA encryption
@@ -51,6 +54,10 @@
 pkcs12	OID_PKCS12_PBE_SHA1_40RC2_CBC	1.2.840.113549.1.12.1.6	pbeWithSHAAnd40BitRC2-CBC	PKCS #12 Password Based Encryption With SHA-1 and 40-bit RC2-CBC
 
 x509	OID_SIG_ED25519	1.3.101.112	ed25519	Edwards-curve Digital Signature Algorithm (EdDSA) Ed25519
+x509	OID_SIG_ED448	1.3.101.113	ed448	Edwards-curve Digital Signature Algorithm (EdDSA) Ed448
+
+nist-algs	OID_NIST_EC_P384	1.3.132.0.34	secp384r1	P-384 elliptic curve parameter
+nist-algs	OID_NIST_EC_P521	1.3.132.0.35	secp521r1	P-521 elliptic curve parameter
 
 kdf	OID_KDF_SHA1_SINGLE	1.3.133.16.840.63.0.2	dhSinglePass-stdDH-sha1kdf-scheme	Single pass Secure Hash Algorithm 1 (SHA1) key derivation
 
@@ -143,5 +150,7 @@
 nist-algs	OID_NIST_ENC_AES256_CBC	2.16.840.1.101.3.4.1.42	aes-256-cbc	256-bit Advanced Encryption Standard (AES) algorithm with Cipher-Block Chaining (CBC) mode of operation
 
 nist-algs	OID_NIST_HASH_SHA256	2.16.840.1.101.3.4.2.1	sha256	Secure Hash Algorithm that uses a 256 bit key (SHA256)
+nist-algs	OID_NIST_HASH_SHA384	2.16.840.1.101.3.4.2.2	sha384	Secure Hash Algorithm that uses a 384 bit key (SHA384)
+nist-algs	OID_NIST_HASH_SHA512	2.16.840.1.101.3.4.2.3	sha512	Secure Hash Algorithm that uses a 512 bit key (SHA512)
 
 x509	OID_X509_EXT_CERT_TYPE	2.16.840.1.113730.1.1	nsCertType	X.509 v3 Certificate Type
diff --git a/out/oid_db.rs b/out/oid_db.rs
index 029adfe..11f4b14 100644
--- a/out/oid_db.rs
+++ b/out/oid_db.rs
@@ -12,12 +12,20 @@
 pub const SPC_INDIVIDUAL_SP_KEY_PURPOSE_OBJID : Oid<'static> = oid!(1.3.6.1.4.1.311.2.1.21);
 /// 1.3.6.1.4.1.311.10.1
 pub const MS_CTL: Oid<'static> = oid!(1.3.6.1.4.1.311.10.1);
+/// 1.3.132.0.34
+pub const OID_NIST_EC_P384: Oid<'static> = oid!(1.3.132.0.34);
+/// 1.3.132.0.35
+pub const OID_NIST_EC_P521: Oid<'static> = oid!(1.3.132.0.35);
 /// 1.3.14.3.2.26
 pub const OID_HASH_SHA1: Oid<'static> = oid!(1.3.14.3.2.26);
 /// 2.16.840.1.101.3.4.1.42
 pub const OID_NIST_ENC_AES256_CBC: Oid<'static> = oid!(2.16.840.1.101.3.4.1.42);
 /// 2.16.840.1.101.3.4.2.1
 pub const OID_NIST_HASH_SHA256: Oid<'static> = oid!(2.16.840.1.101.3.4.2.1);
+/// 2.16.840.1.101.3.4.2.2
+pub const OID_NIST_HASH_SHA384: Oid<'static> = oid!(2.16.840.1.101.3.4.2.2);
+/// 2.16.840.1.101.3.4.2.3
+pub const OID_NIST_HASH_SHA512: Oid<'static> = oid!(2.16.840.1.101.3.4.2.3);
 /// 1.2.840.113549.1.1.1
 pub const OID_PKCS1_RSAENCRYPTION: Oid<'static> = oid!(1.2.840.113549.1.1.1);
 /// 1.2.840.113549.1.1.2
@@ -86,6 +94,8 @@
 pub const OID_DOMAIN_COMPONENT: Oid<'static> = oid!(0.9.2342.19200300.100.1.25);
 /// 1.3.101.112
 pub const OID_SIG_ED25519: Oid<'static> = oid!(1.3.101.112);
+/// 1.3.101.113
+pub const OID_SIG_ED448: Oid<'static> = oid!(1.3.101.113);
 /// 1.3.6.1.4.1.11129.2.4.2
 pub const OID_CT_LIST_SCT: Oid<'static> = oid!(1.3.6.1.4.1.11129.2.4.2);
 /// 1.3.6.1.5.5.7.1.1
@@ -208,6 +218,10 @@
 pub const OID_SIG_ECDSA_WITH_SHA256: Oid<'static> = oid!(1.2.840.10045.4.3.2);
 /// 1.2.840.10045.4.3.3
 pub const OID_SIG_ECDSA_WITH_SHA384: Oid<'static> = oid!(1.2.840.10045.4.3.3);
+/// 1.2.840.10045.4.3.4
+pub const OID_SIG_ECDSA_WITH_SHA512: Oid<'static> = oid!(1.2.840.10045.4.3.4);
+/// 1.2.840.10045.3.1.7
+pub const OID_EC_P256: Oid<'static> = oid!(1.2.840.10045.3.1.7);
 
 impl<'a> OidRegistry<'a> {
     #[cfg(feature = "kdf")]
@@ -235,9 +249,13 @@
     #[cfg_attr(docsrs, doc(cfg(feature = "nist_algs")))]
     #[doc = "Load all known OIDs for feature `nist_algs` in the registry."]
     pub fn with_nist_algs(mut self) -> Self {
+        self.insert(oid!(1.3.132.0.34), OidEntry::new("secp384r1", "P-384 elliptic curve parameter"));
+        self.insert(oid!(1.3.132.0.35), OidEntry::new("secp521r1", "P-521 elliptic curve parameter"));
         self.insert(oid!(1.3.14.3.2.26), OidEntry::new("id-SHA1", "SHA-1 hash algorithm"));
         self.insert(oid!(2.16.840.1.101.3.4.1.42), OidEntry::new("aes-256-cbc", "256-bit Advanced Encryption Standard (AES) algorithm with Cipher-Block Chaining (CBC) mode of operation"));
         self.insert(oid!(2.16.840.1.101.3.4.2.1), OidEntry::new("sha256", "Secure Hash Algorithm that uses a 256 bit key (SHA256)"));
+        self.insert(oid!(2.16.840.1.101.3.4.2.2), OidEntry::new("sha384", "Secure Hash Algorithm that uses a 384 bit key (SHA384)"));
+        self.insert(oid!(2.16.840.1.101.3.4.2.3), OidEntry::new("sha512", "Secure Hash Algorithm that uses a 512 bit key (SHA512)"));
         self
     }
 
@@ -314,6 +332,7 @@
     pub fn with_x509(mut self) -> Self {
         self.insert(oid!(0.9.2342.19200300.100.1.25), OidEntry::new("domainComponent", "Domain component"));
         self.insert(oid!(1.3.101.112), OidEntry::new("ed25519", "Edwards-curve Digital Signature Algorithm (EdDSA) Ed25519"));
+        self.insert(oid!(1.3.101.113), OidEntry::new("ed448", "Edwards-curve Digital Signature Algorithm (EdDSA) Ed448"));
         self.insert(oid!(1.3.6.1.4.1.11129.2.4.2), OidEntry::new("ctSCTList", "Certificate Transparency Signed Certificate Timestamp List"));
         self.insert(oid!(1.3.6.1.5.5.7.1.1), OidEntry::new("authorityInfoAccess", "Certificate Authority Information Access"));
         self.insert(oid!(1.3.6.1.5.5.7.48.1), OidEntry::new("id-ad-ocsp", "PKIX Access Descriptor OCSP"));
@@ -382,6 +401,8 @@
         self.insert(oid!(1.2.840.10045.4.3.1), OidEntry::new("ecdsa-with-SHA224", "Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 224 (SHA224) algorithm"));
         self.insert(oid!(1.2.840.10045.4.3.2), OidEntry::new("ecdsa-with-SHA256", "Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 256 (SHA256) algorithm"));
         self.insert(oid!(1.2.840.10045.4.3.3), OidEntry::new("ecdsa-with-SHA384", "Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 384 (SHA384) algorithm"));
+        self.insert(oid!(1.2.840.10045.4.3.4), OidEntry::new("ecdsa-with-SHA512", "Elliptic curve Digital Signature Algorithm (DSA) coupled with the Secure Hash Algorithm 512 (SHA512) algorithm"));
+        self.insert(oid!(1.2.840.10045.3.1.7), OidEntry::new("prime256v1", "P-256 elliptic curve parameter"));
         self
     }
 
