11

IMPORTANT NOTE - READ FIRST:

While this can be selfhosted, YOU SHOULDNT! ... NONE of my projects have been audited or reviewed. I provide them for testing and demo purposes only. NOT to replace any other app you use.

BE RESPONSIBLE WHEN USING UNAUDITED SOFTWARE... DO NOT USE FOR SENSITIVE PURPOSES.


Now that I've hit you over the head with caution...

Want to send encrypted WebRTC messages and video calls with no downloads, no sign-ups and no tracking?

This prototype uses WebRTC to establish an encrypted browser-to-browser connection. Everything is stored locally in browser storage and cleared when you clear the site data from your browser - true zerodata privacy!

34

I've been looking at the WebCrypto API. When combined with the File system API, it can be used to encrypt and store files on your device storage in what seems to be a pretty secure way.

A webapp has some clear vulnerabilities with the code being served over the web (so you shouldnt be using this for any serious purposes!).

Live demo: https://dim.positive-intentions.com/?path=%2Fstory%2Fusefs--encrypted-demo

Demo code: https://github.com/positive-intentions/dim/blob/staging/src/stories/05-Hooks-useFS.stories.js


IMPORTANT NOTES TO PREVENT MISLEADING

  • this isnt a product. it provided for testing and demo.
  • it isnt reviewed or audited.
  • the "password encryption" is using a hardcoded password. id like to aim for a passwordless approach for this, but i havent considered it enough to discuss yet :)
  • this isnt aimed to replace anything like veracrypt. just to show a comparison.
  • this respository represents a webcomponent UI framework. while it holds some ideas i think are interesting, the ui framework seems like its going to be deprecated and i will be refactoring the functionality in favour of React.
4
submitted 7 months ago* (last edited 7 months ago) by positive_intentions@lemmy.ml to c/softwarearchitecture@lemmy.ml

how its architected: https://positive-intentions.com/blog/decentralised-architecture

some benefits of the approach: https://positive-intentions.com/blog/statics-as-a-chat-app-infrastructure

i find that module federation and microfronends to generally be discouraged when i see posts, but it i think it works for me in my approach. im optimisic about the approach and the benefits and so i wanted to share details.

[-] positive_intentions@lemmy.ml 5 points 10 months ago

if i do a good job, it would have comparable features.

the key distinction between mine and other apps like syncthing, is that its provided as a zero-installation, zero-registration webapp.

so its basically ready-to-use at any point on any device that has a browser.

[-] positive_intentions@lemmy.ml 4 points 10 months ago

if i do a good job, it would have comparable features.

the key distinction between mine and other apps like syncthing, is that its provided as a zero-installation, zero-registration webapp.

so its basically ready to use at any point on any device that has a browser.

11

glitr.io

hey. im working on a p2p file sharing app as a kind-of alternative to somthing like GDrive or iCloud to transfer files between computers. its far from finished, but ive got enough to put it up for testing and demo purposes. it would be great if you would like to take a look and share feedback.

the aim is for this is to make it easier to transfer files between your own devices.

(my app-description combined with security-claims typically raises eyebrows, so id like to include a link to a related reddit post: https://www.reddit.com/r/cryptography/comments/1evdby4/is_this_a_secure_messaging_app)

some pending things to add:

  • improved connection stability when over the internet.
  • increased file size capacity (currently limited to around 50MB)
  • add file-transfer progress indicator (useful for larger payloads).
  • update all the documentation to make it less technical.

feel free to reach out for clarity.

40
submitted 10 months ago* (last edited 10 months ago) by positive_intentions@lemmy.ml to c/privacy@lemmy.ml

glitr.io

hey. im working on a p2p file sharing app. its far from finished, but ive got enough to put it up for testing and demo purposes. it would be great if you would like to take a look and share feedback.

the aim is for this is to make it easier to transfer files between your own devices.

(my app-description combined with security-claims typically raises eyebrows, so id like to include a link to a related reddit post: https://www.reddit.com/r/cryptography/comments/1evdby4/is_this_a_secure_messaging_app)

some pending things to add:

  • improved connection stability when over the internet.
  • increased file size capacity (currently limited to around 50MB)
  • add file-transfer progress indicator (useful for larger payloads).

feel free to reach out for clarity.

5

https://github.com/positive-intentions/chat

A webapp for P2P E2EE messaging and file transfer. its a fairly unique approach to secure messaging.

the project isnt ready to replace any existing apps or services, but given the competative market for this kind of project, id like to push it out to get feedback.

i made an attempt to create documentation on the website, but otherwise feel free to reach out with questions about how it works.

Note: this project has NOT been audited. It, along with it's source code are provided for testing and demo purposes.

29

https://github.com/positive-intentions/chat

A webapp for P2P E2EE messaging and file transfer. its a fairly unique approach to secure messaging.

the project isnt ready to replace any existing apps or services, but given the competative market for this kind of project, id like to push it out to get feedback.

i made an attempt to create documentation on the website, but otherwise feel free to reach out with questions about how it works.

Note: this project has NOT been audited. It, along with it's source code are provided for testing and demo purposes.

[-] positive_intentions@lemmy.ml 4 points 11 months ago

if youre asking for an audit, i expect you have an idea that they arent cheap. its simply beyond my means. the project is too complicated for pro-bono work.

the chat app (which contains file-transfer capabilities) is open source. id like to develop the p2p capabilities into a SaaS and so its logical to lean towards close-source for the "file" app.

[-] positive_intentions@lemmy.ml 5 points 11 months ago

thanks! im playing around with the website to make the landing page experience more appealing. the apps themselves, are running inside an iframe.

the google stuff is only for the website. the apps have their own subdomains and CSP headers that block foreign scripts.

(the direct links are found on the website footer under "links")

65
P2P E2EE messaging and file-transfer (positive-intentions.com)

https://positive-intentions.com/

A webapp for P2P E2EE messaging and file transfer. its a fairly unique approach to secure messaging.

the project isnt ready to replace any existing apps or services, but given the competative market for this kind of project, id like to push it out to get feedback.

i made an attempt to create documentation on the website, but otherwise feel free to reach out with questions about how it works.

6

i created a browser-based tool for p2p file transfer where it doesnt use any backend for storage. instead, it relies on storage provided by the browser.

https://file.positive-intentions.com/

9

I'm creating a JavaScript UI framework for my own projects. It's a learning journey and I'd like to share my progress.

I've written some blog posts about my progress so far:

  1. Functional Web Components - https://positive-intentions.com/blog/dim-functional-webcomponents
  2. Functional Todo App - https://positive-intentions.com/blog/dim-todo-list
  3. Async State Management - https://positive-intentions.com/blog/async-state-management
  4. Bottom-up Browser Storage - https://positive-intentions.com/blog/bottom-up-storage

Note: The UI framework is far from finished. I want to share progress to see if there are any outstanding issues I'm overlooking.

[-] positive_intentions@lemmy.ml 6 points 1 year ago

its browser based. it uses webrtc to create p2p connections between browsers. concepts like authentication takes the form of using cryptography capabilities of a typical browser. the storage of data from messages to encryption keys are stored in indexedDB as provided by the browser of your choice. there is an emphesis on client-side browser-based capabilities in all parts of the app.

matrix is a good peer reviewed and generally reccommended solution. this project isnt intended to replace any existing solution. there are many other similar projects out there, but i notice there arent many presented as webapps. this is my attempt.

12
submitted 1 year ago* (last edited 1 year ago) by positive_intentions@lemmy.ml to c/cybersecurity@sh.itjust.works

App: https://chat.positive-intentions.com/

A p2p encrypted file transfer and messaging app. Here are some features below:

  • Open Source
  • Cross platform
    • PWA
    • iOS, Android, Desktop (self compile)
    • App store, Play store (coming soon)
    • Desktop
      • Windows, Macos, Linux (self compile)
      • run index.html on any modern browser
    • Decentralized
  • Secure
    • No cookies
    • P2P encrypted
    • No registration
    • No installing
  • Messaging
    • Group Messaging (coming soon)
    • Text Messaging
    • Multimedia Messaging
    • Screensharing (on desktop browsers)
    • Offline Messaging (in research phase)
    • File Transfer
    • Video Calls
  • Data Ownership
    • Self Hosting
    • GitHub pages Hosting
    • Local-Only storage

Check it out!

28
submitted 1 year ago* (last edited 1 year ago) by positive_intentions@lemmy.ml to c/opensource@lemmy.ml

App: https://chat.positive-intentions.com/

A p2p encrypted file transfer and messaging app. Here are some features below:

  • Open Source
  • Cross platform
    • PWA
    • iOS, Android, Desktop (self compile)
    • App store, Play store (coming soon)
    • Desktop
      • Windows, Macos, Linux (self compile)
      • run index.html on any modern browser
    • Decentralized
  • Secure
    • No cookies
    • P2P encrypted
    • No registration
    • No installing
  • Messaging
    • Group Messaging (coming soon)
    • Text Messaging
    • Multimedia Messaging
    • Screensharing (on desktop browsers)
    • Offline Messaging (in research phase)
    • File Transfer
    • Video Calls
  • Data Ownership
    • Self Hosting
    • GitHub pages Hosting
    • Local-Only storage

Check it out!

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

I don't think this kind of app could be an alternative to instagram because of it only being P2P with only people you know.

The app is using webRTC which exposes IP addresses, so you wouldn't want something like a global feed on this.

Immich sounds interesting. I'd like to make time to check it out.

[-] positive_intentions@lemmy.ml 5 points 1 year ago

P2P allows for a fairly unexplored infrastructure for content moderation. In this app, the feed of images would only be from people you connect to. For people to connect to you, you have to share a crypto random id.

As a webapp you can clear the site data by logging out. Basically, people cannot randomly connect to you and share things you don't like.

I won't be adding anything like a global feed. Only content that you shared or received.

This doesn't remove the risk of people sending you things you don't like so I'm all ears for an approach to that. I didn't make much progress on the following. If there are any hard features you think would help, let me know. I'd like to make some time to create a "block contact" but it'll take time and consideration to do it properly (so I don't expect it soon). Things like logging out and being able to backup your profile might be enough, but not as user-friendly as it could be.

https://www.reddit.com/r/darknetplan/comments/16qw24o/on_my_decentralized_chat_app_i_want_some_kind_of/

[-] positive_intentions@lemmy.ml 4 points 2 years ago

thanks for your thoughts. im sure others would have similar concerns.

The attacker takes over the server and replaces the JS with a backdoored version

this is a core concern why the app is open source and selfhostable. details are provided in the readme to create a selfhosted fork that runs on github pages. there are several ways around this concern described here.

You are going in the wrong direction

thats unfortunate if you still think so, but id like to hear any other concerns if you have any.

[-] positive_intentions@lemmy.ml 4 points 2 years ago

Thanks! As a webapp I generally have no choice but advise that users select a device/os/browser combo they trust.

It's important to note "disabling webRTC" is not a goal here. My app critically relies on it.

The webapp form factor is important for accesability. While things likes Qubes are secure by design, that isn't something I can suggest to potential users. VPN however is a lot more commonly used in today's digital scene, so I think that's a step that easier to advocate to users.

[-] positive_intentions@lemmy.ml 3 points 2 years ago

if "trust" in the static files from a url is a concern, (which is very reasonable), you can easily host your own instance.

i think it fits squarely as a "P2P app". over a hotspot, you can practically send messages offline. im not sure what other qualifiers are needed.

i dont think its ready to be compared to other tools yet. but i would be aiming to make it comparable to something like signal... but it'll take a while to get there.

[-] positive_intentions@lemmy.ml 5 points 2 years ago

It's similar to matrix in many ways. The key difference is with mine it's is purely browser based. Unlike traditional solutions like matrix where you have a (self)hosted server, mine does not require things like registration or installation.

[-] positive_intentions@lemmy.ml 3 points 2 years ago

An understandable view. Not sure what you mean by lengthy, but I can confirm my app is not well documented. If the MDN docs count, its a fairly thin wrapper around the functionality provided by the browser of your choice.

https://github.com/positive-intentions/cryptography/blob/staging/src/stories/components/Cryptography.tsx

I'm using webpack 5 module federation to import that file at runtime. Perhaps over-engineered, but it's so I can keep the crypto functionality maintained separately. That repo is in need of more attention for things like unit tests, but the crypto implementation there is pretty basic.

view more: next ›

positive_intentions

0 post score
0 comment score
joined 2 years ago
MODERATOR OF