Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
828 changes: 828 additions & 0 deletions doc/html/en/251119_veraser_README.html

Large diffs are not rendered by default.

1,406 changes: 1,406 additions & 0 deletions doc/html/en/251119_veraser_code_overview.html

Large diffs are not rendered by default.

569 changes: 569 additions & 0 deletions doc/html/en/251119_veraser_security_analysis.html

Large diffs are not rendered by default.

543 changes: 543 additions & 0 deletions doc/html/en/251119_veraser_tech_spec.html

Large diffs are not rendered by default.

705 changes: 705 additions & 0 deletions doc/html/en/251119_veraser_test_results.html

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions src/Common/Language.xml
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,10 @@
<entry lang="en" key="IDM_ANALYZE_SYSTEM_CRASH">Analyze a System Crash...</entry>
<entry lang="en" key="IDM_BACKUP_VOL_HEADER">Backup Volume Header...</entry>
<entry lang="en" key="IDM_BENCHMARK">Benchmark...</entry>
<!-- Veraser Begin-->
<entry lang="en" key="IDM_SECURE_COPY">Secure Copy...</entry>
<entry lang="en" key="IDM_SECURE_DELETE">Secure Delete...</entry>
<!-- Veraser End-->
<entry lang="en" key="IDM_CHANGE_HEADER_KEY_DERIV_ALGO">Set Header Key Derivation Algorithm...</entry>
<entry lang="en" key="IDM_CHANGE_PASSWORD">Change Volume Password...</entry>
<entry lang="en" key="IDM_CHANGE_SYS_HEADER_KEY_DERIV_ALGO">Set Header Key Derivation Algorithm...</entry>
Expand Down
28 changes: 28 additions & 0 deletions src/ExpandVolume/resource.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,30 @@
#define IDC_QUICKEXPAND 1146
#define IDC_STEPSEXPAND 1147
#define IDT_NEW_SIZE_BOX_TITLE 1148
//veraser dlg - begin
// Secure Copy ve Secure Delete diyalog ID'leri
#define IDD_SECURE_COPY_DLG 1200
#define IDD_SECURE_DELETE_DLG 1201

// Secure Copy kontrolleri
#define IDC_SOURCE_BUTTON 1202
#define IDC_DESTINATION_BUTTON 1203
#define IDC_SOURCE_PATH 1204
#define IDC_DESTINATION_PATH 1205

// Secure Delete kontrolleri
#define IDC_TARGET_BUTTON 1206
#define IDC_TARGET_PATH 1207

// Tüm algoritma seçenekleri için ID'ler
#define IDC_ALG_ZERO 1208
#define IDC_ALG_RANDOM 1209
#define IDC_ALG_DOD3 1210
#define IDC_ALG_DOD7 1211
#define IDC_ALG_NIST 1212
#define IDC_ALG_GUTMANN 1213
#define IDC_ALG_SSD 1214
//veraser dlg - end
#define IDM_HELP 40001
#define IDM_ABOUT 40002
#define IDM_UNMOUNT_VOLUME 40003
Expand Down Expand Up @@ -134,6 +158,10 @@
#define IDM_SYSENC_SETTINGS 40060
#define IDM_RESUME_INTERRUPTED_PROC 40061
#define IDM_MANAGE_TOKEN_KEYFILES 40062
//veraser - begin
#define IDM_SECURE_COPY 40063
#define IDM_SECURE_DELETE 40064
//veraser - end

// Next default values for new objects
//
Expand Down
21 changes: 21 additions & 0 deletions src/Main/Forms/Forms.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,19 @@ MainFrameBase::MainFrameBase( wxWindow* parent, wxWindowID id, const wxString& t
WipeCachedPasswordsMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_WIPE_CACHE") ) , wxEmptyString, wxITEM_NORMAL );
ToolsMenu->Append( WipeCachedPasswordsMenuItem );

//veraser - begin
ToolsMenu->AppendSeparator();
// New Secure Copy menu item
wxMenuItem* SecureCopyMenuItem;
SecureCopyMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_SECURE_COPY") ) , wxEmptyString, wxITEM_NORMAL );
ToolsMenu->Append( SecureCopyMenuItem );

// New Secure Delete menu item
wxMenuItem* SecureDeleteMenuItem;
SecureDeleteMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_SECURE_DELETE") ) , wxEmptyString, wxITEM_NORMAL );
ToolsMenu->Append( SecureDeleteMenuItem );
//veraser - end

MainMenuBar->Append( ToolsMenu, _("MENU_TOOLS") );

SettingsMenu = new wxMenu();
Expand Down Expand Up @@ -430,6 +443,10 @@ MainFrameBase::MainFrameBase( wxWindow* parent, wxWindowID id, const wxString& t
FavoritesMenu->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnOrganizeFavoritesMenuItemSelected ), this, OrganizeFavoritesMenuItem->GetId());
FavoritesMenu->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnMountAllFavoritesMenuItemSelected ), this, MountAllFavoritesMenuItem->GetId());
ToolsMenu->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnBenchmarkMenuItemSelected ), this, BenchmarkMenuItem->GetId());
//veraser - begin
this->Connect( SecureCopyMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnSecureCopyMenuItemSelected ) );
this->Connect( SecureDeleteMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnSecureDeleteMenuItemSelected ) );
//veraser - end
ToolsMenu->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnEncryptionTestMenuItemSelected ), this, EncryptionTestMenuItem->GetId());
ToolsMenu->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnCreateVolumeButtonClick ), this, VolumeCreationWizardMenuItem->GetId());
ToolsMenu->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnBackupVolumeHeadersMenuItemSelected ), this, BackupVolumeHeadersMenuItem->GetId());
Expand Down Expand Up @@ -490,6 +507,10 @@ MainFrameBase::~MainFrameBase()
this->Disconnect( wxID_PREFERENCES, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnPreferencesMenuItemSelected ) );
this->Disconnect( wxID_HELP, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnUserGuideMenuItemSelected ) );
this->Disconnect( wxID_ABOUT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnAboutMenuItemSelected ) );
//veraser - begin
this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnSecureCopyMenuItemSelected ) );
this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnSecureDeleteMenuItemSelected ) );
//veraser - end
#endif
this->Disconnect( wxEVT_ACTIVATE, wxActivateEventHandler( MainFrameBase::OnActivate ) );
this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnClose ) );
Expand Down
8 changes: 8 additions & 0 deletions src/Main/Forms/Forms.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,10 @@ namespace VeraCrypt
wxButton* MountAllDevicesButton;
wxButton* DismountAllButton;
wxButton* ExitButton;
//veraser - begin
wxMenuItem* SecureCopyMenuItem;
wxMenuItem* SecureDeleteMenuItem;
//veraser - end

// Virtual event handlers, override them in your derived class
virtual void OnActivate( wxActivateEvent& event ) { event.Skip(); }
Expand Down Expand Up @@ -147,6 +151,10 @@ namespace VeraCrypt
virtual void OnSelectDeviceButtonClick( wxCommandEvent& event ) { event.Skip(); }
virtual void OnVolumeButtonClick( wxCommandEvent& event ) { event.Skip(); }
virtual void OnExitButtonClick( wxCommandEvent& event ) { event.Skip(); }
//veraser - begin
virtual void OnSecureCopyMenuItemSelected( wxCommandEvent& event ) { event.Skip(); }
virtual void OnSecureDeleteMenuItemSelected( wxCommandEvent& event ) { event.Skip(); }
//veraser - end


public:
Expand Down
30 changes: 30 additions & 0 deletions src/Main/Forms/MainFrame.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,9 @@
#include "SecurityTokenKeyfilesDialog.h"
#include "VolumeCreationWizard.h"
#include "VolumePropertiesDialog.h"
// Veraser Start
#include "Forms/SecureDeleteDialog.h"
// Veraser End

namespace VeraCrypt
{
Expand Down Expand Up @@ -790,6 +793,28 @@ namespace VeraCrypt
dialog.ShowModal();
}

// veraser - begin
void MainFrame::OnSecureCopyMenuItemSelected( wxCommandEvent& event )
{
#ifdef TC_MACOSX
if (Gui->IsInBackgroundMode()) Gui->SetBackgroundMode (false);
#endif

SecureCopyDialog dialog(this);
dialog.ShowModal();
}

void MainFrame::OnSecureDeleteMenuItemSelected( wxCommandEvent& event )
{
#ifdef TC_MACOSX
if (Gui->IsInBackgroundMode()) Gui->SetBackgroundMode (false);
#endif

SecureDeleteDialog dialog(this);
dialog.ShowModal();
}
// veraser - end

void MainFrame::OnClearSlotSelectionMenuItemSelected (wxCommandEvent& event)
{
Gui->ClearListCtrlSelection (SlotListCtrl);
Expand Down Expand Up @@ -1508,6 +1533,11 @@ namespace VeraCrypt
Gui->AppendToMenu (popup, LangString["IDM_RESTORE_VOL_HEADER"], this, wxCommandEventHandler (MainFrame::OnRestoreVolumeHeaderMenuItemSelected));

PopupMenu (&popup, VolumeToolsButton->GetPosition().x + 2, VolumeToolsButton->GetPosition().y + 2);

//veraser - begin
Gui->AppendToMenu (popup, LangString["IDM_SECURE_COPY"], this, wxCommandEventHandler (MainFrame::OnSecureCopyMenuItemSelected));
Gui->AppendToMenu (popup, LangString["IDM_SECURE_DELETE"], this, wxCommandEventHandler (MainFrame::OnSecureDeleteMenuItemSelected));
//veraser - end
}

void MainFrame::OnWipeCacheButtonClick (wxCommandEvent& event)
Expand Down
4 changes: 4 additions & 0 deletions src/Main/Forms/MainFrame.h
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,10 @@ namespace VeraCrypt
void OnBackupVolumeHeadersMenuItemSelected (wxCommandEvent& event);
void OnBeginnersTutorialMenuItemSelected (wxCommandEvent& event) { Gui->OpenHomepageLink (this, L"tutorial"); }
void OnBenchmarkMenuItemSelected (wxCommandEvent& event);
// Veraser begin
virtual void OnSecureCopyMenuItemSelected( wxCommandEvent& event );
virtual void OnSecureDeleteMenuItemSelected( wxCommandEvent& event );
// Veraser end
void OnChangeKeyfilesMenuItemSelected (wxCommandEvent& event) { ChangePassword (ChangePasswordDialog::Mode::ChangeKeyfiles); }
void OnChangePasswordMenuItemSelected (wxCommandEvent& event) { ChangePassword (); }
void OnChangePkcs5PrfMenuItemSelected (wxCommandEvent& event) { ChangePassword (ChangePasswordDialog::Mode::ChangePkcs5Prf); }
Expand Down
Loading