Ilmainen yksityisyystyökalu

Sinetöi tiedosto

Salaa tiedosto tuoreella kertakäyttöavaimella ja lähetä se minkä tahansa kanavan kautta. Se, jolla on avain, avaa sen juuri täällä, tällä sivulla. Mitään ei koskaan ladata palvelimelle, murrettavaa salalausetta ei ole, ja näet sisällön ennen kuin mitään tallennetaan.

Toimii kokonaan tässä välilehdessä. Tämä sivu ei voi ottaa yhteyttä yhteenkään palvelimeen.

Jokainen parametri, kerrottuna

Salausalgoritmi
AES-256-GCM (WebCrypto), 128-bittinen tagi per lohko
Avain
256 bittiä selaimen CSPRNG:stä, luodaan tuoreena joka sinetöinnille, käytetään kerran, ei johdeta mistään
Lohkotus
salattu manifesti (tiedostonimi, koko, tyyppi), sitten tiedosto 1 MiB:n lohkoina — kukin erikseen todennettuna
Nonssi
32-bittinen satunnainen sinettisuola ‖ 64-bittinen lohkolaskuri — ei koskaan toistu tiedoston sisällä, ja avain on joka tapauksessa kertakäyttöinen
Todennettu data
koko 16 tavun otsake sekä kunkin lohkon indeksi ja lohkojen kokonaismäärä — lohkojen uudelleenjärjestely, katkaisu tai vaihtaminen rikkoo salauksen purun
Avainmerkkijono
base64url, 47 merkkiä: 32 tavun avain sekä 3 tavun SHA-256-tarkiste, joten kirjoitusvirhe epäonnistuu siististi sen sijaan, että tuottaisi roskaa

Rehelliset vastaukset siitä, mitä tämä tekee

Kaikki tapahtuu selaimessasi.

Sekä sinetöinti että avaaminen lukevat tiedoston tämän sivun muistiin, ajavat siellä AES-256-GCM:n selaimesi sisäänrakennetulla WebCrypto-moottorilla ja ojentavat tuloksen takaisin latauksena. Mitään ei ladata palvelimelle. Ei tiliä eikä palvelinpuolen käsittelyä. Toisin kuin muu tämä sivusto, tämä sivu ei lataa edes evästeetöntä kävijälaskuria. Ei minkäänlaista analytiikkaa.

Tämä ei ole pelkkä lupaus. Sivu tarjoillaan Content-Security-Policyllä, joka sallii selaimen hakea vain tämän sivuston omat staattiset tiedostot. Sillä ei ole mitään keinoa lähettää tiedostoasi, avaintasi tai mitään muuta millekään palvelimelle, meidän palvelimemme mukaan lukien. Avaa selaimesi kehittäjätyökalut sinetöinnin aikana, niin näet nolla pyyntöä. Suorimman todisteen saat asentamalla Työkalupakin ja sinetöimällä lentokonetilassa. Kun verkko on poissa päältä, mitään ei voi lähteä.

Avain on kaikki kaikessa — eikä se ole koskaan meillä.

Jokainen sinetöinti luo selaimessasi tuoreen satunnaisen 256-bittisen avaimen. Se näytetään sinulle kerran eikä sitä säilytetä missään: ei meidän järjestelmissämme (niitä ei ole mukana), ei selaimesi tallennustilassa, ei sinetöidyssä tiedostossa. Arvattavaa salalausetta ei ole eikä mitään raa’alla voimalla murrettavaa. Se, jolla on avain ja tiedosto, voi avata sen. Se, jolla ei ole, ei voi.

Sillä on kova seuraus: jos avain katoaa, tiedosto on mennyttä. Ei nollausta, ei tukipyyntöä, ei palautusta. Tässä ei ole kyse siitä, että olisimme hankalia. Kopio, jonka voisimme palauttaa, olisi kopio, jonka joku voisi varastaa tai vaatia.

Avainlinkki ei koskaan päädy palvelimelle.

Jakolinkki laittaa avaimen URL-osoitteen #-merkin jälkeen. Tuon osan, fragmentin, selain pitää itsellään. Sitä ei koskaan sisällytetä siihen, mitä selain lähettää millekään palvelimelle, meidän tai kenenkään muun. Kun tämä sivu latautuu linkistä, jossa on avain, se lukee avaimen, vaihtaa Avaa-välilehdelle ja poistaa avaimen välittömästi osoiteriviltä. Näin se ei jää näkyvään URL-osoitteeseen tai selainhistoriaan.

Silti kuka tahansa, jolla on sekä linkki että sinetöity tiedosto, voi avata sen. Siksi tämä sivu kehottaa lähettämään tiedoston ja avaimen eri kanavien kautta.

Näet sisällön ennen kuin mitään tallennetaan.

Avaaminen tapahtuu kahdessa vaiheessa. Ensin sivu purkaa vain pienen manifestin: alkuperäisen tiedostonimen, koon ja tyypin. Se näyttää sen sinulle äänekkäällä varoituksella niistä tiedostotyypeistä, jotka voivat suorittaa koodia (ohjelmat, skriptit, asennusohjelmat, makrodokumentit, HTML) ja nimistä, jotka on naamioitu kaksoispäätteellä kuten invoice.pdf.exe. Mitään ei kirjoiteta ennen kuin napsautat purkua. Sivu ei koskaan itse avaa tai näytä purettua sisältöä. Se vain tarjoaa tiedoston ladattavaksi.

Ole selvillä siitä, mitä salaus todistaa ja mitä ei. Sinetöity tiedosto on luottamuksellinen matkalla. Sinetöinti ei kerro mitään siitä, kuka sen lähetti tai onko sen sisältö turvallista. Suhtaudu odottamattomaan sinetöityyn tiedostoon yhtä epäillen kuin odottamattomaan liitetiedostoon.

Missä luottamuksen raja oikeasti kulkee.

Ajat koodia, jonka tämä sivusto tarjoili sinulle. Jos sealby.app tai yhteytesi siihen olisi vaarantunut, haitallinen sivu voisi lukea sen, mitä siihen syötät. Tämä pätee jokaiseen selainpohjaiseen salaustyökaluun, ja sanomme sen mieluummin kuin esitämme toisin. Mitä me teemme sen suhteen: sivu on staattinen tiedosto, ja pidämme sen vapaana kolmannen osapuolen koodista. Asennetun Työkalupakin avulla voit jatkaa jo lataamasi version käyttöä. Ja muoto on dokumentoitu alla, jotta sitä vasten voi rakentaa riippumattomia työkaluja.

Myös oma laitteesi on rajan sisäpuolella. Selainlaajennukset, joilla on pääsy sivuun, tai koneella oleva haittaohjelma voivat lukea kaiken, minkä mikä tahansa sivu voi. Sinetöity tiedosto piilottaa sisältönsä muttei kaikkea. Kuka tahansa sen haltija näkee sen koon (suunnilleen alkuperäisen) ja sen, että kyseessä on Sealbyn sinetöimä tiedosto.

Rajat selkokielellä

  • Kadonnut avain = kadonnut tiedosto. Ei poikkeuksia, tarkoituksella.
  • Emme näe tiedostojasi tai avaimiasi, joten emme myöskään voi tarkistaa niitä haittaohjelmien varalta. Tiedostotyypin varoitus perustuu pelkästään tiedostonimeen. Se ei ole turvallisuustakuu.
  • Kuka tahansa, jolla on sekä sinetöity tiedosto että avain, voi avata sen. Työkalu ei tiedä eikä tarkista, kuka hän on.
  • Sinetöidyn tiedoston koko paljastaa suunnilleen alkuperäisen tiedoston koon.
  • Yksi tiedosto, enintään 100 Mt, sinetöintiä kohden. Pakkaa useampi tiedosto ensin zipiksi.

Muoto, tavu tavulta

Kaikki mitä tekninen lukija tarvitsee tämän sivun tulosteen itsenäiseen varmistamiseen, tai .sealed-tiedoston avaamiseen kolmellakymmenellä rivillä Pythonia:

bytesfieldcontents
0–7taikatavutASCII "SEALBY-W"
8versio0x01 — kaikki muu hylätään ”uudemmalla versiolla tehtynä”
9algoritmi0x01 = AES-256-GCM
10–13sinettisuola4 tavua, CSPRNG, tuore joka sinetöinnille
14–15varattuoltava nolla
16–loppulohkokehyksetkukin: uint32 BE salatekstin pituus, sitten AES-GCM-salateksti + 16 tavun tagi

Lohko 0 on manifesti: UTF-8-JSON {"name":…,"size":…,"type":…}. Lohkot 1…N−1 ovat tiedosto 1 MiB:n paloina. Lohkolle i / N: nonssi = suola ‖ uint64 BE i; todennettu data = otsake ‖ uint64 BE i ‖ uint64 BE N. Näin ollen peukalointi, katkaisu, uudelleenjärjestely, siirtäminen ja tiedostojen välinen palojen vaihto epäonnistuvat kaikki todennuksessa. Kukin tapaus todistetaan omalla sitoutetulla negatiivisella testillä.

Avainmerkkijono: base64url (ilman täytettä) 32 tavun avaimesta ja sen SHA-256-tiivisteen kolmesta ensimmäisestä tavusta, yhteensä 47 merkkiä. Kirjoitusvirhe kaatuu tarkisteeseen sen sijaan, että tuottaisi roskaa.

Viiteavaaja (Python, cryptography-kirjasto)
import base64, hashlib, json, struct, sys
from cryptography.hazmat.primitives.ciphers.aead import AESGCM

raw = open(sys.argv[1], "rb").read()
assert raw[:8] == b"SEALBY-W" and raw[8] == 1 and raw[9] == 1
assert raw[14:16] == b"\x00\x00"
header, salt = raw[:16], raw[10:14]
frames, off = [], 16
while off < len(raw):
    (n,) = struct.unpack(">I", raw[off:off + 4]); off += 4
    frames.append(raw[off:off + n]); off += n
assert off == len(raw)

kb = base64.urlsafe_b64decode(sys.argv[2] + "=")   # 47-char key string
key, check = kb[:32], kb[32:35]
assert hashlib.sha256(key).digest()[:3] == check    # typo check

N = len(frames)
def chunk(i):
    nonce = salt + struct.pack(">Q", i)
    aad = header + struct.pack(">QQ", i, N)
    return AESGCM(key).decrypt(nonce, frames[i], aad)

manifest = json.loads(chunk(0))
data = b"".join(chunk(i) for i in range(1, N))
assert len(data) == manifest["size"]
open(manifest["name"], "wb").write(data)
print("decrypted ->", manifest["name"])

Tämä on matkalla oleville tiedostoille. Holvi on paikallaan oleville.

Sinetöinti suojaa tiedostoa sen matkalla jonnekin. Sealby suojaa kaiken sen mikä jää: kuvat, tiedostot ja muistiinpanot salatuissa holveissa iPhonellasi. Ei tiliä, ei palvelimia, kenenkään muun kuin sinun luettavissa.

Lataa App Storesta

iPhone ja iPad · iOS 17+ · Ilmainen