78
submitted 1 year ago by Ward@lemmy.nz to c/privacyguides@lemmy.one

Thought people might be interested in seeing a project I've almost completed.

Purplix.io is a open source end-to-end encrypted survey system & warrant canary manger / viewer.

Would love some feedback or to answer any questions anyone has!

(Ignore the Nav not expanding to the bottom on some of the screenshots, thats just due to the screen shotting tool i use for full page screenshots.)

top 22 comments
sorted by: hot top controversial new old
[-] dtb@sh.itjust.works 13 points 1 year ago

When you say end-to-end encrypted, what are you referring to?

What's the intent for this tool that isn't solved via TLS?

Also, just as an aside, but this is kind of funny given the context:

[-] Ward@lemmy.nz 7 points 1 year ago* (last edited 1 year ago)

E2EE meaning survey questions and answers are encrypted locally & decrypted locally. The server or any other actors can't view survey questions aside from users its shared with and survey answers are only readable by the owner of such survey.

This means on a data leak, nothing is readable.

Yea Purplix.io is still in development, so it isn't live yet. Hense the fail DNS lookup you show.

[-] possiblylinux127@lemmy.zip 1 points 1 year ago

How does that work? Couldn't the server just pretend to be a client?

[-] Ward@lemmy.nz 1 points 1 year ago* (last edited 1 year ago)

Not 100% sure what you mean, but the encryption key for questions are only known by users who are shared the link & is never transmitted to the server. Answers are encrypted by the survey's public key what only the creator of said survey knows the private key. The public key is also encrypted by the secret key in the URL so the server can't even submit answers.

Here is a example URL of a survey.

example.com/s/64b185662c74e7c40cac5e66/KfcrkxiR-4nomGbEqNos0dyhEBsgiUAqPpZiRQt5syE#oAnQnjWhxq2IFTZBvrylVSHxg92HoWQr2mJQ-qZwvPY

  • s/64b185662c74e7c40cac5e66 - This is the survey ID, transmitted to server.
  • /KfcrkxiR-4nomGbEqNos0dyhEBsgiUAqPpZiRQt5syE - This is a hash of the survey's signing public key, this is to stop MITM attacks from the host & validation of the survey questions.
  • #oAnQnjWhxq2IFTZBvrylVSHxg92HoWQr2mJQ-qZwvPY - This is the secret key for decrypting questions, this is also used to decrypt the public key for encrypting answers. This key is never transmitted to server.

All encryption & decryption happens locally, so the server never sees any plain text. It is possible for the host to modify the frontend to expose keys, but this is true of any web app & Purplix is hosted from Vercel straight from our Git repo, so it would be quite obvious if this happened.

[-] min_fapper@iusearchlinux.fyi 4 points 1 year ago

I'm going to assume whoever is hosting the service can't view your surveys and results.

[-] HughJanus@lemmy.ml 4 points 1 year ago

Can't really see your screenshots but do you have alternate voting systems like Ranked Choice or Approval?

[-] Ward@lemmy.nz 1 points 1 year ago

Purplix is planning to launch with multiple choice, single choice, short answer and long answer. After launch we'll be adding additional answer types.

[-] NoFutvre@lemmy.one 4 points 1 year ago* (last edited 1 year ago)

Excellent work! I’ve been looking for something like this for AGES

[-] BrikoX@lemmy.zip 3 points 1 year ago
[-] Ward@lemmy.nz 1 points 1 year ago

Don't know the complete inner workings of Cryptpad. But it appears Purplix uses more modern encryption, uses more modern frameworks & has more safe guards against MITM attacks. Also additional options like captcha, proxy block, account required etc.

[-] PublicLewdness@burggit.moe 2 points 1 year ago

While I can't say I would have use for it myself I wish you luck and will spread it around where I can.

[-] Ward@lemmy.nz 2 points 1 year ago

Sheeesshh, you know when Public lewdness supports your project you know its good! Thanks for the kind words, have a great day.

[-] Oha@lemmy.ohaa.xyz 1 points 1 year ago

Looks pretty cool

[-] Karcinogen@discuss.tchncs.de 1 points 1 year ago

Where is the data stored? Is it encrypted at rest?

[-] Ward@lemmy.nz 1 points 1 year ago

No, survey questions and answers are encrypted & decrypted locally. At no point does the server or any other actors can view that plain data said from whom the survey is intended for.

[-] Tangent5280@lemmy.world 0 points 1 year ago

I understand encrypted-at-rest to mean that the data is always stored under encryption, except when it is being actively being used or displayed. Am I wrong? So in your usecase also, all data is stored under encryption and only decrypted by the surveyor or the surveyed; so this is encrypted at rest, no?

[-] Ward@lemmy.nz 3 points 1 year ago

Encrypted at rest doesn't always mean E2EE. For example if data is transmitted in plain text to the server and then encrypted before storage. This is still encrypted at rest.

[-] Ward@lemmy.nz 1 points 1 year ago

Purplix now supports per Survey & per Canary themes.

themes

load more comments
view more: next ›
this post was submitted on 15 Jul 2023
78 points (100.0% liked)

Privacy Guides

16754 readers
1 users here now

In the digital age, protecting your personal information might seem like an impossible task. We’re here to help.

This is a community for sharing news about privacy, posting information about cool privacy tools and services, and getting advice about your privacy journey.


You can subscribe to this community from any Kbin or Lemmy instance:

Learn more...


Check out our website at privacyguides.org before asking your questions here. We've tried answering the common questions and recommendations there!

Want to get involved? The website is open-source on GitHub, and your help would be appreciated!


This community is the "official" Privacy Guides community on Lemmy, which can be verified here. Other "Privacy Guides" communities on other Lemmy servers are not moderated by this team or associated with the website.


Moderation Rules:

  1. We prefer posting about open-source software whenever possible.
  2. This is not the place for self-promotion if you are not listed on privacyguides.org. If you want to be listed, make a suggestion on our forum first.
  3. No soliciting engagement: Don't ask for upvotes, follows, etc.
  4. Surveys, Fundraising, and Petitions must be pre-approved by the mod team.
  5. Be civil, no violence, hate speech. Assume people here are posting in good faith.
  6. Don't repost topics which have already been covered here.
  7. News posts must be related to privacy and security, and your post title must match the article headline exactly. Do not editorialize titles, you can post your opinions in the post body or a comment.
  8. Memes/images/video posts that could be summarized as text explanations should not be posted. Infographics and conference talks from reputable sources are acceptable.
  9. No help vampires: This is not a tech support subreddit, don't abuse our community's willingness to help. Questions related to privacy, security or privacy/security related software and their configurations are acceptable.
  10. No misinformation: Extraordinary claims must be matched with evidence.
  11. Do not post about VPNs or cryptocurrencies which are not listed on privacyguides.org. See Rule 2 for info on adding new recommendations to the website.
  12. General guides or software lists are not permitted. Original sources and research about specific topics are allowed as long as they are high quality and factual. We are not providing a platform for poorly-vetted, out-of-date or conflicting recommendations.

Additional Resources:

founded 1 year ago
MODERATORS