Packaging application with file - package

I'm currently working on an application which will use the bouncy castle api in C# to encrypt/decrypt, I've got all of the public/private and pass phrase key encryption/decryption working but need to also be able to create encrypted self decrypting archives, I've read that the best way to do this is the encrypt the file using the passphrase encryption that I've written and create a light weight forms application which will decrypt the file, I've done this but my question is now how do I package the forms application with the file so that I can automatically save the file somewhere, launch the forms application passing in the file location in order for the user to specify where they want to save the decrypted file and enter their passphrase?
Many thanks in advance

After reading many other posts I've realised that the best way to do this is by creating the application on the fly and then adding the file to be decrypted to the resources of the application.

Related

How can I encrypt and decrypt data on client in Meteor React?

I'm currently working on a password managing application in Meteor React and can't seem to find a way to encrypt and decrypt data on the client, with MmongoDB storing the encrypted data.
To add a little background to the task and specify what I am trying to do:
This whole application is for one single company and users are the employees only. The passwords, along with username info and some other attributes are stored in folders and users get view and edit rights to data within the folder. Passwords (along with additional info) need to be encrypted, but multiple users need to be able to access them based on the rights given to them. So when the data is encrypted, say when a person creates a password, other users with the rights to do so need to be able to decrypt this data as well. However, the decryption needs to happen on client and the server can only ever access the encrypted data.
I have tried using planifica:encryption, because it has exactly what we need for our project, but I ran into some errors and I can't get past them nor find any article about them. I have heard of Mylar in some answers to similar questions, but both Mylar and Planifica don't seem to have been updated for a few years now. I know Node.js has a crypto module, but I am not sure whether it could be used to share encrypted data among users and most importantly, how to do so.
Is there any way to do what we need for this project? I should also point out that I am relatively new to meteor and I have not dealt with encryption whatsoever, so my understanding is rather limited.
Thank you for reading!
This very much depends on the encryption you are using, but since you are interested in decrypting things client-side, it sounds like what you are looking for is the SubtleCrypto web api.
That should be all you need on top of what Meteor already provides. You should be able to use a regular meteor collection and publication to share the encrypted data with your clients, and then let them decrypt it using the above linked decrypt function. One question I'd have is how you will be able to get the decryption key to your clients while hiding it from the server, but I assume you've got that part figured out somehow.

MD5 encrypt selected GDrive files

not being a coder myself but need to know for a task of an AppSheet app project, if it basically is possible to MD5 or other encrypt actual GDoc, GSheet, image, etc. files.
So if someone logs into that given Gdrive, they would not be able to open the documents, without decryption.
Thx
Frank

How to manage credentials in Julia?

I recently started using the Julia programming langauge and have had difficulty locating any package (or even, just, an explanation of best practice) to manage sensitive credentials, say, when connecting to a database or using various APIs.
One approach I've been using is to encode credentials into a .csv or .json file, then load the file in:
using CSV
credentials = CSV.read("C:/Users/jkix/credentials.csv")
username = credentials[:usr][1]
password = credentials[:pw][1]
The problem with this approach are obvious:
1. Julia prints the values of assignments to the screen by default, so even though the above code is portable and doesn't require any hard-coding of credentials, those credentials are visible to anyone who happens to look over your shoulder.
2. .csv and .json files store data in plaintext anyway
tl;dr: Is there a Julia package in existence for credential management?
I don't know of any package that does all the stuff. What I did, when I had to deal with it last time is encrypting the credentials (both in file and memory) using Nettle.jl and only decrypt right before accessing the service.
An alternative would be MbedTLS.jl or calling to your favorite library via run.

Best practice with ClickOnce Deployment application settings

I have a question regarding a WinForm application and ClickOnce Deployment.
Currently, I use the Visual Studio Installer for creating my installer. One of the things that I do is I have created a custom installer class that I use for entering in certain information (servername, database name, username, password, port number - which is needing for my connection string to the DB). This information gets written to my app config file. However, this makes updates a pain, so I am looking into ClickOnce Deployment instead.
For those of you that do something similar, what's the best way to go about handling this? Is it possible for me to include a config file with my ClickOnce Deployment project that will just copy the settings from that file during the installation? Or, what is the recommend best practice for handling this?
Thanks everyone.
My ClickOnce application also accesses a database. I created a separate program that asks for the database information and encrypts it into a .DAT file. The .DAT file is added to the main program. You must change a setting on the file to Content so that it is included in deployment. The main program opens the .DAT file and decrypts it for the information. This way no one that uses the program knows any of the database information.

How to open a binary file directly from a database in c#?

Hey there,
i have a table with a field called "file" full of binary data (The File Itself) how can i open this binary data directly from the database on a click Event for example using c# ?
i dont want to download the file each time to view it .. just view it using the default viewer in the user's OS.
Any Ideas ??
To start off with other than an extremely trivial (throwaway) application I hope that you have setup some layers to abstract the DB access from your UI.
Ultimately your application will have to get the binary object from the DB table and present it as a file to the OS. The applications that come to mind typically want you to pass a filename to them to open them. In essence this means you have to download the file to the local machine with this technique.
The alternative would be to store the files on the filesystem of a server somewhere and place the name/location in your DB (nvarchar). Your application could get the filename/location and pass that to the viewer application.

Resources