2020-06-11 17:44:23 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS squeak (
|
2020-06-04 02:41:16 -07:00
|
|
|
hash CHAR(64) PRIMARY KEY,
|
|
|
|
|
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
2020-07-19 01:50:48 -07:00
|
|
|
n_version INTEGER NOT NULL,
|
|
|
|
|
hash_enc_content CHAR(64) NOT NULL,
|
|
|
|
|
hash_reply_sqk CHAR(64) NOT NULL,
|
|
|
|
|
hash_block CHAR(64) NOT NULL,
|
|
|
|
|
n_block_height INTEGER NOT NULL,
|
|
|
|
|
vch_script_pub_key bytea NOT NULL,
|
|
|
|
|
vch_encryption_key bytea NOT NULL,
|
|
|
|
|
enc_data_key CHAR(256) NOT NULL,
|
2020-07-05 18:02:15 -07:00
|
|
|
iv CHAR(32) NOT NULL,
|
2020-07-19 01:50:48 -07:00
|
|
|
n_time INTEGER NOT NULL,
|
|
|
|
|
n_nonce BIGINT NOT NULL,
|
|
|
|
|
enc_content CHAR(2272) NOT NULL, -- Encrypted content length is always 1136 bytes (2272 hex characters).
|
|
|
|
|
vch_script_sig bytea NOT NULL,
|
2020-07-27 00:55:58 -07:00
|
|
|
author_address VARCHAR(35) NOT NULL, -- Maximum length of a bitcoin address is 35.
|
2020-07-30 00:42:44 -07:00
|
|
|
vch_decryption_key bytea,
|
2020-07-18 17:19:43 -07:00
|
|
|
block_header bytea
|
2020-06-04 02:41:16 -07:00
|
|
|
);
|
2020-06-04 13:24:29 -07:00
|
|
|
|
2020-06-11 17:44:23 -07:00
|
|
|
CREATE INDEX IF NOT EXISTS idx_squeak_address
|
2020-07-27 00:55:58 -07:00
|
|
|
ON squeak(author_address);
|
2020-07-17 16:42:22 -07:00
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS profile (
|
|
|
|
|
profile_id SERIAL PRIMARY KEY,
|
|
|
|
|
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
|
profile_name VARCHAR(64) NOT NULL,
|
|
|
|
|
private_key bytea,
|
|
|
|
|
address VARCHAR(35) UNIQUE NOT NULL, -- Maximum length of a bitcoin address is 35.
|
2020-07-29 21:48:42 -07:00
|
|
|
sharing BOOLEAN NOT NULL,
|
|
|
|
|
following BOOLEAN NOT NULL,
|
2020-07-28 02:05:33 -07:00
|
|
|
whitelisted BOOLEAN NOT NULL
|
2020-07-17 16:42:22 -07:00
|
|
|
);
|
2020-07-30 05:25:45 -07:00
|
|
|
|
2020-08-03 04:20:05 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS peer (
|
|
|
|
|
peer_id SERIAL PRIMARY KEY,
|
2020-07-30 05:25:45 -07:00
|
|
|
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
2020-08-03 04:20:05 -07:00
|
|
|
peer_name VARCHAR(64),
|
2020-07-30 05:25:45 -07:00
|
|
|
server_host VARCHAR(256) NOT NULL,
|
|
|
|
|
server_port INTEGER NOT NULL,
|
2020-08-03 04:20:05 -07:00
|
|
|
uploading BOOLEAN NOT NULL,
|
|
|
|
|
downloading BOOLEAN NOT NULL
|
2020-07-30 05:25:45 -07:00
|
|
|
);
|
2020-08-05 04:16:08 -07:00
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS offer (
|
|
|
|
|
offer_id SERIAL PRIMARY KEY,
|
|
|
|
|
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
|
squeak_hash CHAR(64) NOT NULL,
|
|
|
|
|
key_cipher bytea NOT NULL,
|
|
|
|
|
iv bytea NOT NULL,
|
2020-08-07 17:50:06 -07:00
|
|
|
payment_hash CHAR(64) NOT NULL,
|
|
|
|
|
invoice_timestamp INTEGER NOT NULL,
|
|
|
|
|
invoice_expiry INTEGER NOT NULL,
|
|
|
|
|
price_msat INTEGER NOT NULL,
|
2020-08-05 04:16:08 -07:00
|
|
|
payment_request TEXT NOT NULL,
|
2020-08-07 17:50:06 -07:00
|
|
|
destination VARCHAR(66) NOT NULL,
|
2020-08-05 04:16:08 -07:00
|
|
|
node_host VARCHAR(256) NOT NULL,
|
|
|
|
|
node_port INTEGER NOT NULL,
|
|
|
|
|
peer_id INTEGER NOT NULL
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS sent_payment (
|
|
|
|
|
sent_payment_id SERIAL PRIMARY KEY,
|
|
|
|
|
created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
|
offer_id INTEGER NOT NULL,
|
|
|
|
|
peer_id INTEGER NOT NULL,
|
|
|
|
|
squeak_hash CHAR(64) NOT NULL,
|
|
|
|
|
preimage_hash CHAR(64) NOT NULL,
|
|
|
|
|
preimage CHAR(64) NOT NULL,
|
|
|
|
|
amount INTEGER NOT NULL,
|
|
|
|
|
node_pubkey VARCHAR(66) NOT NULL,
|
|
|
|
|
preimage_is_valid BOOLEAN NOT NULL
|
|
|
|
|
);
|