Vahvistus

Vahvista sertifikaattisi

Vahvista minkä tahansa Bernstein-blockchain-sertifikaatin aitous riippumattomasti. Ei tarvetta luottaa palvelimeen.

Nollaluottamusvahvistus

Validaattorimme on suunniteltu niin, ettei sinun tarvitse koskaan luottaa meihin. Kaikki tapahtuu selaimessasi.

100 % asiakaspuolella

100 % asiakaspuolella

Tiedostosi eivät koskaan poistu laitteeltasi. Kaikki tiivistys ja vahvistus tapahtuu paikallisesti selaimessasi.

Blockchain-todiste

Blockchain-todiste

Sertifikaatit vahvistetaan muuttumatonta Bitcoin-blockchainia vasten - ei tarvetta luottaa palvelimeen.

Toimii offline-tilassa

Toimii offline-tilassa

Maksimaalisen turvallisuuden vuoksi voit katkaista internetyhteyden ennen arkaluontoisten tiedostojen lataamista.

Avoin vahvistus

Avoin vahvistus

Kuka tahansa voi vahvistaa sertifikaatteja riippumattomasti standardeilla kryptografisilla työkaluilla.

Ominaisuudet

Mitä voit vahvistaa

Validaattorimme antaa sinun todistaa sekä tiedostojen olemassaolon että sertifikaattien omistajuuden.

01

Todista olemassaolo

Lataa tiedostoja vahvistaaksesi, että ne vastaavat sertifikaatin sormenjälkeä, joka on rekisteröity Bitcoin-blockchainiin.

02

Todista omistajuus

Syötä yksityiset avaimesi todistaaksesi kryptografisesti, että omistat sertifikaatin.

03

Luo allekirjoituksia

Luo kryptografisia allekirjoituksia todistaaksesi omistajuuden kolmansille osapuolille, kuten tuomioistuimille tai sijoittajille.

04

Jaa todiste

Vie vahvistustiedot, jotka kuka tahansa voi validoida riippumattomasti.

Tekninen

Miten vahvistus toimii

Sertifikaattimme käyttävät standardeja kryptografisia tekniikoita, jotka kuka tahansa voi vahvistaa.

SHA-256-tiivistys

SHA-256-tiivistys

Tiedostot tiivistetään samalla algoritmilla kuin Bitcoin. Sormenjälki on ainutlaatuinen tunniste juuri sinun tiedostoillesi.

Bitcoin-ankkurointi

Bitcoin-ankkurointi

Sormenjälki upotetaan Bitcoin-tapahtumaan, luoden muuttumattoman aikaleiman maailman turvallisimpaan rekisteriin.

Hyväksytyt aikaleimat

Hyväksytyt aikaleimat

Lisäaikaleimat EU:n ja Kiinan valtion viranomaisilta tuovat oikeudellisen tunnustuksen.

Sormenjäljen vastaavuus

Sormenjäljen vastaavuus

Lataa alkuperäiset tiedostosi. Jos laskettu sormenjälki vastaa blockchain-tietuetta, olemassaolo on todistettu.

Protokolla

Bernsteinin rekisteröintiprotokolla

Ymmärrä, miten Bernstein luo blockchain-sertifikaatteja tiedostoistasi.

Bernstein auttaa sinua luomaan todennettavan todisteen olemassaolosta ja omistajuudesta mille tahansa digitaaliselle resurssille. Kun lataat tiedostoja projektiin, Bernstein luo kryptografisen sormenjäljen ja tallentaa sen Bitcoin-blockchainiin.

Jokainen projekti voi sisältää useita tiedostoja ja kehittyä ajan myötä. Jokainen sertifioimasi versio luo uuden blockchain-tietueen, rakentaen täydellisen tarkastuslokin immateriaaliomaisuudestasi.

Jokainen Bernstein-sertifikaatti vastaa Bitcoin-tapahtumaa, jolla on kolme keskeistä ominaisuutta:

  • Julkinen - näkyvissä kenelle tahansa Bitcoin-verkossa
  • Aikaleimattu - ankkuroitu tiettyyn lohkoon tarkalla päivämäärällä ja kellonajalla
  • Muuttumaton - ei voida muuttaa tai poistaa vahvistuksen jälkeen

Kolme kryptografista avainta

Omistaja-avain

Omistaja-avain

Johdettu tililtäsi. Todistaa, kuka omistaa sertifikaatin. Vastaava julkinen avain on painettu sertifikaattisi PDF-tiedostoon.

Data-avain

Data-avain

Johdettu projektitiedostojesi SHA-256-hashista. Todistaa, mitkä tiedostot sertifikaatti kattaa.

Bernstein-avain

Bernstein-avain

Bernsteinin alusta-avain, joka allekirjoittaa tapahtuman yhdessä. Vastaava julkinen avain on painettu sertifikaattisi PDF-tiedostoon.

Rekisteröintivaiheet

01

Tiedostosi tiivistetään yksitellen SHA-256:lla ja yhdistetään sitten yhdeksi projektin sormenjäljeksi.

02

Projektin sormenjälki muunnetaan Bitcoin-yksityisavaimeksi, josta johdetaan julkinen avain (data-avain).

03

Data-avain, omistaja-avain ja Bernstein-avain yhdistetään 3-of-3 MultiSig-Bitcoin-osoitteeksi.

04

Luodaan Bitcoin-tapahtuma, joka lähettää varoja tähän MultiSig-osoitteeseen, tallentaen sertifikaatin pysyvästi blockchainiin.

Syntyvä Bitcoin-osoite koodaa kaikki kolme avainta - todistaen, kuka omisti mitä ja milloin. Kuka tahansa, jolla on alkuperäiset tiedostot ja julkiset avaimet, voi riippumattomasti rekonstruoida osoitteen ja vahvistaa sen blockchainia vasten.

Edistynyt

Manuaalinen vahvistus

Et edes tarvitse työkalujamme. Seuraa näitä vaiheita vahvistaaksesi Bernstein-sertifikaatin riippumattomasti Bitcoin-blockchainia vasten standardilla avoimen lähdekoodin kryptografisella ohjelmistolla.

Mitä tarvitset ennen aloittamista
  • Kaikki projektitiedostot ja projektin kansitiedosto (ladattavissa Bernstein-sovelluksesta)
  • Tapahtumatunnus, joka näkyy Bernstein-sertifikaatin PDF-tiedostossa
  • Omistajan julkinen avain ja Bernsteinin julkinen avain, jotka löytyvät myös sertifikaatin PDF-tiedostosta
  • Perustuntemus tietokoneen terminaalin käytöstä

Laske SHA-256-hash jokaisesta yksittäisestä projektiin sisältyvästä tiedostosta. Tähän on monia työkaluja. Linuxissa tai macOS:ssä suorita seuraava komento terminaalissasi:

Terminaalikomento:

shasum -a 256 yourfile.pdf

Voit myös käyttää verkkopalveluita, kuten SHA256 Online Checksum.

SHA-256 on standardialgoritmi - se tuottaa aina saman tuloksen käytetystä työkalusta riippumatta.

Muista tiivistää myös projektin kansitiedosto. Tämä on tekstitiedosto, joka sisältää projektin otsikon ja kuvauksen, ladattavissa Bernstein-sovelluksesta.

Yhdistä hashit yhdeksi projektin sormenjäljeksi:
  1. Lajittele kaikki yksittäiset hashit aakkosjärjestykseen
  2. Yhdistä ne yhdeksi merkkijonoksi
  3. Laske yhdistetyn merkkijonon SHA-256-hash

Tulos on projektisi sormenjälki. Voit vahvistaa sen Bernstein-sovelluksessa projektisi kohdalla näkyvää sormenjälkeä vasten.

Käyttääksesi projektin hashia Bitcoin-avaimena sinun on muunnettava se HEX-muodosta WIF-muotoon (Wallet Import Format). Tarjoamme Python-skriptin tähän muunnokseen.

Aloita asentamalla tarvittava Python-paketti:

pip install base58

Tallenna seuraava Python-skripti nimellä hex2wif.py:

import sys, hashlib, base58

def hex_to_wif(hex_key):
    extended = "80" + hex_key + "01"
    first_sha = hashlib.sha256(bytes.fromhex(extended)).digest()
    second_sha = hashlib.sha256(first_sha).digest()
    checksum = second_sha[:4].hex()
    return base58.b58encode(bytes.fromhex(extended + checksum)).decode()

if __name__ == "__main__":
    if len(sys.argv) != 2:
        print("Usage: python hex2wif.py <your-project-hash-hex>")
        sys.exit(1)
    print(hex_to_wif(sys.argv[1]))

Suorita sitten skripti projektin hashillasi:

python hex2wif.py <your-project-hash-hex>

Skripti tulostaa vastaavan avaimen WIF-muodossa. Voit vahvistaa tuloksen Bernstein-sovelluksessa klikkaamalla avainkuvaketta projektisi blockchain-sertifikaatin vieressä.

Tässä vaiheessa sinun on johdettava pakattu julkinen avain vaiheessa 2 saadusta WIF-yksityisavaimesta. Tämä on standardi Bitcoin-kryptografinen toimenpide.

Voit käyttää tätä verkkotyökalua: Bitcoin Key Compression Tool

Liitä WIF-avain vaiheesta 2, niin työkalu näyttää siihen liittyvän pakatun julkisen avaimen. Tämä on datan julkinen avain - yksi niistä kolmesta avaimesta, jotka muodostavat sertifikaattiosoitteen.

Nyt kun olet johtanut datan julkisen avaimen tiedostoistasi, yhdistä se omistajan julkiseen avaimeen ja Bernsteinin julkiseen avaimeen - molemmat löytyvät sertifikaatin PDF-tiedostosta - rakentaaksesi 3-of-3 MultiSig-Bitcoin-osoitteen.

Tallenna ja suorita seuraava Ruby-skripti:

require 'digest'
require 'base58'
require 'bech32'

def decode_hex(hex)
  [hex].pack('H*')
end

def sha256(data)
  Digest::SHA256.digest(data)
end

def hash160(data)
  Digest::RipeMD160.digest(sha256(data))
end

def p2sh_multisig(keys)
  script = "\x53" # OP_3
  keys.sort.each { |k| script += [k.length / 2].pack('C') + decode_hex(k) }
  script += "\x53\xae" # OP_3 OP_CHECKMULTISIG
  h = hash160(script)
  version = "\x05"
  payload = version + h
  checksum = sha256(sha256(payload))[0..3]
  Base58.binary_to_base58(payload + checksum, :bitcoin)
end

def p2wsh_multisig(keys)
  script = "\x53"
  keys.sort.each { |k| script += [k.length / 2].pack('C') + decode_hex(k) }
  script += "\x53\xae"
  witness_hash = sha256(script)
  Bech32::SegwitAddr.new(hrp: 'bc', ver: 0,
    bytes: witness_hash.unpack('C*')).addr
end

puts "Select protocol version:"
puts "1 - Protocol 1 (P2SH)"
puts "2 - Protocol 2 (P2WSH SegWit)"
version = gets.chomp.to_i

keys = []
%w[Data Owner Bernstein].each do |name|
  print "Enter #{name} Public Key: "
  keys << gets.chomp
end

address = version == 1 ? p2sh_multisig(keys) : p2wsh_multisig(keys)
puts "\nBitcoin Address: #{address}"

Suorita skripti terminaalistasi:

ruby multisig.rb

Seuraa kehotteita: valitse protokollaversiosi, syötä sitten kolme julkista avainta yksitellen. Skripti tulostaa Bitcoin-osoitteen.

Protokolla 1 (vanha) luo P2SH-osoitteen. Protokolla 2 (nykyinen) luo SegWit P2WSH -osoitteen. Tarkista sertifikaatistasi, mikä protokollaversio pätee.

Etsi lopuksi sertifikaattisi PDF-tiedoston tapahtumatunnus mistä tahansa blockchain-selaimesta.

Suosittelemme Blockstream.info orBlockchair.com.

Etsi osoite tapahtuman tulosteluettelosta ja vertaa sitä osoitteeseen, jonka laskit vaiheessa 4.

Jos osoitteet täsmäävät, vahvistus onnistui!

Onneksi olkoon - olet riippumattomasti todistanut projektiisi sisältyvän tiedon olemassaolon ja eheyden turvautumatta mihinkään kolmanteen osapuoleen.

Valmis vahvistamaan?

Syötä sertifikaattisi tunnus vahvistaaksesi sen aitouden riippumattomasti.