README

Secure Markdown Pastebin

Markdown

Pastes should be written in a Markdown format following the CommonMark specification with some additions from GitHub Flavored Markdown.

Parsers

Markdown is rendered on the server or the client, depending on whether encryption has been used or not.

Rendering options:

Extensions:

Syntax highlighting

Paste can contain fenced code blocks with an optional language name:

module HelloWorld
  def print_hello
    puts "Hello, World!"
  end
end

Syntax highlighting is done in the browser with highlight.js

Cryptography

Pastes can be encrypted in the browser with a passphrase before being sent to the server. The passphrase can be chosen by the user or randomly generated, in any case it is never communicated to the server.

Client side cryptography is provided by libsodium.js.

Random data generation

Secret-key authenticated encryption

Key derivation

Limits

License

Copyright © 2017 Vincent Ollivier. Released under MIT.