VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/doc/chm
.highlight .hll { background-color: #ffffcc } .highlight .c { color: #888888 } /* Comment */ .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ .highlight .k { color: #008800; font-weight: bold } /* Keyword */ .highlight .ch { color: #888888 } /* Comment.Hashbang */ .highlight .cm { color: #888888 } /* Comment.Multiline */ .highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */ .highlight .cpf { color: #888888 } /* Comment.PreprocFile */ .highlight .c1 { color: #888888 } /* Comment.Single */ .highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */ .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .gr { color: #aa0000 } /* Generic.Error */ .highlight .gh { color: #333333 } /* Generic.Heading */ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ .highlight .go { color: #888888 } /* Generic.Output */ .highlight .gp { color: #555555 } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #666666 } /* Generic.Subheading */ .highlight .gt { color: #aa0000 } /* Generic.Traceback */ .highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ .highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ .highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ .highlight .kp { color: #008800 } /* Keyword.Pseudo */ .highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ .highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
/*
 Copyright (c) 2008-2011 TrueCrypt Developers Association. All rights reserved.

 Governed by the TrueCrypt License 3.0 the full text of which is contained in
 the file License.txt included in TrueCrypt binary and source code distribution
 packages.
*/



#ifndef GOST_CIPHER_H
#define GOST_CIPHER_H

#include "Common/Tcdefs.h"
#include "config.h"
#include "misc.h"

#ifdef __cplusplus
extern "C" {
#endif

//In unsigned chars
#define GOST_KEYSIZE	32
#define GOST_BLOCKSIZE	8
#define GOST_SBOX_SIZE	16

//Production setting, but can be turned off to compare the algorithm with other implementations
#define CIPHER_GOST89
#define GOST_DYNAMIC_SBOXES

#if defined(CIPHER_GOST89)

#ifdef GST_WINDOWS_BOOT
typedef int gst_word;
typedef long gst_dword;
typedef unsigned int gst_uword;
typedef unsigned long gst_udword;
#else
typedef short gst_word;
typedef int gst_dword;
typedef unsigned short gst_uword;
typedef unsigned int gst_udword;
#endif

typedef struct gost_kds
{
	CRYPTOPP_ALIGN_DATA(16) byte key[32];
	gst_udword	sbox_cvt[256 * 4];
	byte			sbox[8][16];
} gost_kds;

#define GOST_KS				(sizeof(gost_kds))

void gost_encrypt(const byte *in, byte *out, gost_kds *ks, int count);
void gost_decrypt(const byte *in, byte *out, gost_kds *ks, int count);
void gost_set_key(const byte *key, gost_kds *ks, int useDynamicSbox);

#else 
#define GOST_KS				(0)
#endif

#ifdef __cplusplus
}
#endif


#endif
AgeCommit message (Collapse)AuthorFilesLines
2022-12-11Documentation: remove usage of CSS collapsible to avoid breaking CHM ↵Mounir IDRASSI3-1/+19
generation. Add new entries to CHM. Remove example script file since its content is described inline in the documentation We need to generate CHM from the same HTML files as the documentation and so we are limited by CHM compatibility
2022-03-27Documentation: clearer description of how number of iterations are calculatedMounir IDRASSI1-0/+0
2022-03-22Update release notes for 1.26.0 and set its date to March 21st 2022Mounir IDRASSI3-3/+3
2022-02-19Increment version to 1.25.9 and update Release Notes.Mounir IDRASSI1-0/+0
-0/+0 2020-12-23Update Release Notes with latest changes for upcoming 1.24-Update9Mounir IDRASSI1-0/+0 2020-11-29Update Release Notes for 1.24-Update8 version for MacOSXMounir IDRASSI1-0/+0 2020-08-26Documentation: Update list of Supported Operating SystemsMounir IDRASSI1-0/+0 2020-08-07Set release date of 1.24-Update7 to August 7th 2020Mounir IDRASSI1-0/+0 2020-08-06Increment internal version to 1.24.23 and update release notesMounir IDRASSI1-0/+0 2020-08-06Correct entry in "Release Notes.html"Mounir IDRASSI1-0/+0 2020-08-06Fiw typo in "Release Notes.html"Mounir IDRASSI1-0/+0 2020-08-06Increment internal version to 1.24.22 and update release notesMounir IDRASSI1-0/+0 2020-08-03Documentation: remove size specifiers for images in HTML filesMounir IDRASSI1-0/+0 2020-08-03Increment internal version to 1.24.21 and update release notesMounir IDRASSI1-0/+0 2020-07-28Documentation: Update Beginner's Tutorial to use "MyVolume.hc" instead of ↵Mounir IDRASSI1-0/+0 "My Volume" for file container name in order to avoid confusion about nature of file nature for beginners who expect a file to always have an extension (cf https://github.com/veracrypt/VeraCrypt/issues/663) Update screenshots to reflect changes in VeraCrypt UI 2020-07-22Increment internal version to 1.24.20 and update release notesMounir IDRASSI1-0/+0 2020-07-06Update Release Notes with latest Windows change (password drag-n-drop support)Mounir IDRASSI1-0/+0 2020-07-04Increment internal version to 1.24.19Mounir IDRASSI1-0/+0 2020-06-23Increment version to 1.24-Update7Mounir IDRASSI1-0/+0 2020-06-12Update donation page with new Euro bank account detailsMounir IDRASSI1-0/+0 2020-03-10Increment version to 1.24-Update6Mounir IDRASSI1-0/+0 2020-03-10Set release date of 1.24-Update5 and update release notesMounir IDRASSI1-0/+0 2020-02-11Increment version to 1.24-Update5 and update signed Windows drivers.Mounir IDRASSI1-0/+0 2020-01-22Update Release Notes.Mounir IDRASSI1-0/+0 2020-01-22Increment version to 1.24-Update4 and update Release NotesMounir IDRASSI1-0/+0 2020-01-22Documentation: Add entries for newly added /protectMemory and /signalExit ↵Mounir IDRASSI1-0/+0 CLI switches 2019-12-22Increment version to 1.24-Update3 for Linux and update Release NotesVeraCrypt_1.24-Update3Mounir IDRASSI1-0/+0 2019-12-16Documentation: Adding information of availability of RAM encryption and that ↵Mounir IDRASSI1-0/+0 in EFI mode we can't encrypt whole disk 2019-12-16Update version information in preparation for 1.24-Update2 releaseMounir IDRASSI1-0/+0