VeraCrypt | Disk encryption with strong security based on TrueCrypt
kandi X-RAY | VeraCrypt Summary
kandi X-RAY | VeraCrypt Summary
Microsoft Visual C++ 2010 SP1 (Professional Edition or compatible). Microsoft Visual C++ 2019. Microsoft Visual C++ 1.52 (available from MSDN Subscriber Downloads). Microsoft Windows SDK for Windows 7.1 (configured for Visual C++ 2010). Microsoft Windows SDK for Windows 8.1 (needed for SHA-256 code signing). Microsoft Windows Driver Kit 7.1.0 (build 7600.16385.1). NASM assembler 2.08 or compatible. YASM 1.3.0 or newer. upx packer (available at The 64-bit editions of Windows Vista and later versions of Windows, and in some cases (e.g. playback of HD DVD content) also the 32-bit editions, do not allow the VeraCrypt driver to run without an appropriate digital signature. Therefore, all .sys files in official VeraCrypt binary packages are digitally signed with the digital certificate of the IDRIX, which was issued by GlobalSign certification authority. At the end of each official .exe and .sys file, there are embedded digital signatures and all related certificates (i.e. all certificates in the relevant certification chain, such as the certification authority certificates, CA-MS cross-certificate, and the IDRIX certificate). Keep this in mind if you compile VeraCrypt and compare your binaries with the official binaries. If your binaries are unsigned, the sizes of the official binaries will usually be approximately 10 KiB greater than sizes of your binaries (there may be further differences if you use a different version of the compiler, or if you install a different or no service pack for Visual Studio, or different hotfixes for it, or if you use different versions of the required SDKs).
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of VeraCrypt
VeraCrypt Key Features
VeraCrypt Examples and Code Snippets
Community Discussions
Trending Discussions on VeraCrypt
QUESTION
I have a Windows 10 Pro (v1903) machine setup with 2 SSDs and full disk encryption by VeraCrypt. The second SSD is mounted as a system favorite volume, so that I only have to provide one password/key at boot and both SSDs will be mounted successfully.
In Windows Explorer, both SSDs are listed as usual with drive letters and everything looks fine. But in the Disk Management console, the second SSD is listed without a drive letter and as RAW.
Issuing Get-Volume
in an elevated PowerShell (v5.1) will not list the second SSD even if I can see it in the Windows Explorer with a drive letter.
How can I really list all volumes using PowerShell?
...ANSWER
Answered 2021-Mar-26 at 09:40It turns out that the good old WMI is able to really list all volumes:
QUESTION
I am working on a backup script and would like to stop the script on error except for certain commands such as veracrypt --mount
which returns 1 when already mounted.
ANSWER
Answered 2020-Sep-07 at 01:43You can use ||
to execute something that won't fail if a primary command fails, such as with:
QUESTION
As title says. eg do
...ANSWER
Answered 2020-Jul-09 at 16:23That's what's literally in the code:
QUESTION
I'm new to computer security but I'm trying the same to make a toggle case attack starting from a dictionary password.
I read there that it's possible to alternate uppercase and lower case word starting from a dictionary to have all combinations (case sensitive).
I don't know what command to use and 4 now I'm stopped on standard dictionary attack
...ANSWER
Answered 2020-Mar-28 at 07:31Download toggle5.rule from the Hashcat repo on Github and try running this:
QUESTION
I am building a UEFI DXE/EFI (UDK2018) driver (on Windows, using VS2017) into which I need to link an existing object (.obj
) file. I'm fairly certain this should be done from inside the INF file, but I don't see anything specific about object file inclusion in the EDK2 documentation. I did find these two examples for reference:
https://github.com/tianocore/edk2/blob/UDK2018/StdLib/LibC/LibC.inf#L96
...ANSWER
Answered 2019-Oct-08 at 20:16Well, I should have figured that after several days of trying, the answer would appear just after I posted this question...and it did.
I was first directed to the default EDK\Conf\build_rule.txt
file, and looking through there, I found a build rule for .obj
files (as well as .o
files)! This looked a lot like a plain copy (well, actually adding it to the same list as the output of .c
/.cpp
/.asm
/etc. files), so the idea was suggested to try placing the .obj
file into the [Sources]
section. I had not seen that anywhere else, so I tried, and sure enough, it worked:
QUESTION
I am trying to make mounting several Veracrypt volumes with the same password more convenient on the Linux commandline. Since Veracrypt does only support passphrase caching in GUI-mode, I wrote the following code to do the job for me:
...ANSWER
Answered 2019-Jun-30 at 09:35The approach is ok and is as secure as is pipeing the password in the shell <<<"myPassword" veracrypt
.
- There is no password in the
ps
output. - The password is stored in temporary buffers only.
- I think an attacker could still get the password using some side channel attacks, if it knows enough about your application/source code.
Your code is not secure at all.
- You don't check the return value of malloc
- You don't check the return value of popen
- You don't check the return value of getpass
- You overflow the allocated memory for
cc
. You didn't allocate place for the terminating null character. You could useasnprintf
and let GNU library do the job for you. - Because you don't pass properly the
argv[i]
andargv[i+1]
it's plain simple to attack any PC using your program, with just ex.:./your_program "; sudo rm -rf " "; echo I can run any shell script here"
.
Is this approach a good idea at all? (securitywise)
The approach is ok, how you approached it is not ok. Your program leaks memory and doesn't check any return values and has no control over the strings passed to popen
, which is just unsecure. Using system(sudo echo -n)
is also insecure. As for the approuch, would be best to bzero the buffer after it's last use memset(buffer, 0, strlen(buffer) + 1)
(maybe multiple times, like 5), and then free(buffer)
.
In the light of last attacks like Meltdown and Spectre and others, newer ssh versions encrypt the password with a long key (I think with RSA, not sure) right after receiving it from user and decrypt each time upon use. The key is long enough to make attacks using such methods not probable or too long. I don't think there is need for easy small application to implement such method. source.
How is the value of buffer piped to veracrypt by popen()?
Because you use fprintf
, the buffer is copied into the internal FILE*
buffer and then flushed on the newline. By default FILE*
streams are buffered and flushed on newline. You can specify the behavior with setvbuf
, however, I don't think it's safe at all, as the password will remain in the FILE*
buffer for some time. Then the fprintf
call writes the content of the internal FILE*
buffer upon newline to the associated pipe file descriptor with the FILE*
pointer. Then kernel passes the data from the pipe's input to the command's stdin. A little tiny bit safer way (as you don't need printf
utility at all, you just "%s"
...), is probably to use setvbuf(fChild, NULL, _IONBF, 0)
and then to use fwrite(buffer, strlen(buffer), 1, fChild)
.
A proper approach would be to remove the FILE*
and to use the proper pipe()
+ fork()
+ exec()
and stream the password directly into the pipe with write()
call, so you don't use FILE*
internal buffering. fork()
will also allow you to send signals and handle the return value of the child.
Is buffer read directly from its location or is it copied and can therefore remain somewhere in memory?
Yes and yes and yes. It is read directly from it's location inside fprintf
call. It is copied into internal FILE*
buffer. It can therefore remain somewhere in memory.
QUESTION
Trying to pass go command line instructions to start veracrypt but it gets exit status 1 or doesn't show an error and doesn't create the requested volume.
...ANSWER
Answered 2019-Jan-03 at 16:46You have used the tilde symbol ~
in your path names, but this is not a valid character at the beginning of a Unix path.
Rather, some shells substitute the tilde with the path of the user's home directory before passing it on to the operating system.
Because you are not using a shell, you must provide the actual directory yourself. You cannot use the tilde in the beginning of the paths.
QUESTION
I've been reading up on how encryption works more or less and have used some in Java, but I've never seen people talk about encrypting a structure of a file. Mostly the contents.
For example:
This is a simple JSON file.
...ANSWER
Answered 2018-Dec-03 at 11:04You must be Googling for encryption/decryption far too specific towards JSON rather than towards Text File. If you want to encrypt a Text File which just so happens to contain JSON content then the internet is full of examples including SO. Never the less, here are some method that will carry out the task.
The file content encryption provided here utilizes Java 8's Base64 Class encoding and then a Caesar Cipher (which is a shift cipher) is applied to each file line. By no means is this considered a Secure Encryption but it is enough to confuse most (at least for a wee bit).
The concept here is to read in the JSON text file one line at a time. As each line is read in it is encoded, ciphered then saved to a Destination File Path until the end of file is reached. When finished you will see that in no way is the destination file legible towards what type of file the original may have been, at least not until is is Decrypted. All text is ciphered including format indentation. File Decryption is done in the very same fashion.
There are four simple methods provided here which requires Java 8+ to carry out the task of encryption/decryption:
To Encode and Cipher a string:
QUESTION
To the best of my knowledge, there is no gui for the linux version of veracrypt (I'm running Ubuntu), which is fine, but I wanted to change the password of an encrypted drive and cannot figure out how to do it.
I have tried a number of combinations of options with -C
and --new-password
, but nothing seems to work. The version that seems most logical (and gets past the basic validation checks is veracrypt -C --new-password=password
). I get various errors after being prompted for the current credentials and I run into VeraCrypt::File::Open:232
regardless of whether the partition is mounted (decrypted) or not, which seems weird.
If someone knows how to do this or is able to figure it out, would you please be so kind as to post the exact command you used (with any real passwords redacted, of course)?
...ANSWER
Answered 2018-Oct-11 at 14:33what you can do is to run veracrypt with elevated rights:
QUESTION
I'm trying to run the following command from a powershell script.
...ANSWER
Answered 2018-Sep-04 at 09:38You should just be able to use the call operator &
to run the command directly without using cmd:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install VeraCrypt
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page