PixelsCamp / pixelscamp-forever

Been there, done that, got the t-shirt!
11 stars 0 forks source link
giveaway openssl pixelscamp rsa t-shirt

Pixels Camp Forever!

Or... been there, done that, got the t-shirt!

After being postponed three weeks before it was due to happen in March, Pixels Camp v4.0 was cancelled in September due to the still ongoing COVID-19 pandemic and the uncertainty around it for the forseeable future. 😔

But the pixels community is still out there, and lacking a place to gather this year doesn't mean we don't yearn for ways to pick each other out of the crowd (metaphorically speaking, of course). Fancy a free t-shirt? 🙂

What?

We have special Pixels Camp Forever t-shirts ready to be printed and shipped to the first 100 campers that meet the following criteria:

  1. Was approved for Pixels Camp v4.0 or any of the previous editions;
  2. Shows some public proof that they're a proud member of the pixels community.

This offer is valid until OCTOBER 30, 2020 at 23:59. Only submissions considered valid by this deadline will be eligible to get a t-shirt.

How?

You're probably thinking what we mean by "public proof"...

It means posting a photo or video with the hashtags #pixelscamp and #forever on social media. The photo (or video) needs to show you're proud to be part of this community. You can use your imagination or pick one example from this list:

What social media?

Well, Twitter is our primary social network for event updates, but we understand you may not be active on Twitter and may prefer to post somewhere else and that's fine. You may have to attach a screenshot to the GitHub issue though. 🤔

Don't forget the #pixelscamp #forever hashtags!

GitHub issue?

Glad you asked...

After posting on social media, open a new issue in this repository using the same GitHub account as you used for Pixels Camp. This is how we will keep track of shipping, and also the final proof that you're #oneofus.

The issue template is pretty straightforward except for the shipping address part. The world doesn't need to know your real name and address, and we're a bunch of nerds, so you'll have to encrypt it in a way only we can decrypt it, which means asymmetric cryptography is involved: 💥🤓

  1. Paste this certificate (our public key) into a file called public.crt:
    -----BEGIN CERTIFICATE-----
    MIIFBzCCAu+gAwIBAgIJALttocqHkLVNMA0GCSqGSIb3DQEBCwUAMBoxGDAWBgNV
    BAMMD29yZ0BwaXhlbHMuY2FtcDAeFw0yMDA5MTAwOTUwMDVaFw0yMTA5MTAwOTUw
    MDVaMBoxGDAWBgNVBAMMD29yZ0BwaXhlbHMuY2FtcDCCAiIwDQYJKoZIhvcNAQEB
    BQADggIPADCCAgoCggIBAMHGtTI2VxCvcpk20wDA2VVFgZC5KBK4PZ03HVDqRAS2
    4hMhCVV6aVTEaNvgH7XAg9TadhAQzSkTuXEanRN1hkVAVQZLRAdgRJZq/eclkx8R
    xoYnmmBc6YpffmD3I/+AuYwoobVMGgVqHU/a8GlCNA2a05xb8xCuPrOcgyksonZk
    glzkfd88o4JKbU2zm/W2uYkDMjdZzw9fkhLX7lz4kBEeMgBbg/dNwDfCKuo1sfXz
    qUTEtGmEVj5QYeQXVnESCKEFNCodsHuFr3Y4vFi5aYxyEIbTFX5J2xxz8k9kRjOd
    nTLrwIXp+WR1mY85FZdBEqrB5ZnnRO7ma5NlTNwBVAmrMX8Hl2YhWOJsz+JiM4xx
    dJCEQ14E4UbF6SEQSR/p30+Y/HA2EDQ+JWBVYqHvP/yBQNqYbDPFCgqbPx76P9lz
    iZvHIGne1dYO7uNjxfx5yOBUdy2scbFQxiMwFZhwHOWEfUNPuqafLlWBGCGnlh/v
    VS08HJuKJkGmqWBMbCqpg8sQB2K/GoUvQQld218vkKqo3yk0qcte3ZwEByUs/mhC
    kwLXTiRnSbQKg2R+gx1EtsmXVaWe2GWzBBwo51NLeBfKKnYwizn8n/E8TFtMFEXd
    j9yCHvawQJxnjfhQN5ZGL6XetnxO6l+8NjhgRieaDF8vkavWv6qYYhWllmBPQ0bP
    AgMBAAGjUDBOMB0GA1UdDgQWBBR/PUveKUz2SkMr8s7r36H0aHpxQTAfBgNVHSME
    GDAWgBR/PUveKUz2SkMr8s7r36H0aHpxQTAMBgNVHRMEBTADAQH/MA0GCSqGSIb3
    DQEBCwUAA4ICAQC2CIqDBNJGy+wdRHjwl7vZk0eTOj03xjVQnoMONH2JCnI40Jcf
    xhngmhGcmP9CZc2ur984zbmc0bLXqBwTeFT3ZsCU5o6b0K2UqDsz7cyGc7nNDGWc
    WbRPA17yfXxy8wZFwGcEs47kJw9Ud54RAU3Rzya+JJ88CtcZ0pmu/j0Xy28c09iu
    3Xm+E8jGhQjk3jZ7aS1RRxQqN4fO3oR6FDDUig+xmpD9QzOW1xafwocVAaxFVYCc
    VPwOcIn390eUCGxZdjdw2W8JBNJTkKZvt9gjchshlnqkHFS0p5JJhbp6m6AEzS1K
    hiVsL0Avk63tIZ3xqeh8Y1Bu0xLavajHs8zt5oEAQqILvpYpolgJ+3wywGT3/S+A
    k23/tOe5bn+zjqDYz5o8MyT3M0oXkeCbXhh3FLFVmKP62hliIX/X0A8CZ+7QE+t6
    SY/YZXn1wLSjABDNwttqdOdACiwrwAH1swKe50CR8kLPgIXuwSQlpYoUaO5GlUbx
    1gGiYBsre8fft6xTJvR943VQ7v67nPGoKON4CtZwLgngrc8d5j+4AcQiTJJ6qAa1
    tKZ5tUKz6b0fG+JXVrjRDS2s0FLnR2Ukh+C0Y8MS6Fn5ruO9c6LMSX4ThsbLxajC
    4YmJGjiPd5olRd2T2WbV3/CmYCHRhpIikXWvSNW0JgYx+jPUxcaVb8yamg==
    -----END CERTIFICATE-----
  2. Write your name and shipping address in a file called file.txt;
  3. Encrypt file.txt with a random 256-bit key unique to you:
    openssl rand -out random.key 32
    openssl aes-256-cbc -e -in file.txt -md sha256 -pbkdf2 -pass file:random.key | base64 > file.enc
  4. Encrypt the random 256-bit key with our public key:
    openssl rsautl -encrypt -inkey public.crt -certin -in random.key | base64 > random.enc
    rm -f random.key
  5. Place the contents of file.enc and random.enc in the shipping information and shared key sections of the GitHub issue.

Note 1: The shipping address you give us will only be used to send you the t-shirt, we won't store it in our database.

Note 2: If you get errors about unknown options in the above openssl commands, make sure you're using at least version 1.1.1 of OpenSSL. We tested in macOS (homebrew), Fedora 32, Ubuntu 20.04, and CentOS 8.

On our side we'll use our private key (which only a couple of people have access to) with the following commands to see your address:

base64 -d random.enc | openssl rsautl -decrypt -inkey private.key -out decryption.key
base64 -d file.enc | openssl aes-256-cbc -d -md sha256 -pbkdf2 -pass file:decryption.key

How do I know I've won?

When we accept your submission we'll let you know in the GitHub issue itself.

Important note!

Due to logistics constraints, we're only able to ship to within the portuguese territory (mainland and islands). 📦 🚐 🇵🇹

--
The Pixels Camp Organization, 2020