Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							4c9b758348 
							
						 
					 
					
						
						
							
							crypto: implement CmacGenerator  
						
						
						
					 
					
						2025-05-09 12:10:01 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							932db3b92e 
							
						 
					 
					
						
						
							
							ams: address some warnings when building with gcc-12  
						
						
						
					 
					
						2022-10-12 09:15:38 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							ac73be8eae 
							
						 
					 
					
						
						
							
							sf: add new debug-interface-id in cmif out header  
						
						
						
					 
					
						2022-03-23 09:15:59 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							8a5d1ec46c 
							
						 
					 
					
						
						
							
							fs: utilities for hac2l to print gc headers  
						
						
						
					 
					
						2022-03-23 09:15:55 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							bf95bc3ede 
							
						 
					 
					
						
						
							
							fs: add gc validation wrappers for hac2l  
						
						
						
					 
					
						2022-03-23 09:15:55 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							9e1386f225 
							
						 
					 
					
						
						
							
							crypto: add ability to hash data at compile time, for future diag use  
						
						
						
					 
					
						2022-03-23 09:15:49 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							78af849848 
							
						 
					 
					
						
						
							
							libs: begin adding capacity for doing crypto on generic os (using externally-preset keys)  
						
						
						
					 
					
						2022-03-23 09:15:47 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							d7a9c7ec4c 
							
						 
					 
					
						
						
							
							ams: support building unit test programs on windows/linux/macos  
						
						
						
					 
					
						2022-03-23 09:15:46 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							9b2c279d81 
							
						 
					 
					
						
						
							
							fs: add Sha256HashGenerator, LZ4 decompressor  
						
						
						
					 
					
						2022-03-23 09:15:44 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							a0f0dc3ba1 
							
						 
					 
					
						
						
							
							crypto: implement md5, which now used by sprof  
						
						
						
					 
					
						2021-10-26 01:11:19 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							960c5c19f9 
							
						 
					 
					
						
						
							
							ams: improve offsetof style consistency  
						
						
						
					 
					
						2021-10-26 01:11:10 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							116e41f790 
							
						 
					 
					
						
						
							
							exo/vapours: refactor member variables to m_ over this->  
						
						
						
					 
					
						2021-10-15 23:54:34 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							002422d5dc 
							
						 
					 
					
						
						
							
							ams: the copyright^H^H^H^H^H^H^Hmplex plane is the algebraic closure of the reals  
						
						
						
					 
					
						2021-10-07 23:06:25 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							7665721e03 
							
						 
					 
					
						
						
							
							ams-libs: AMS_ASSERT no longer invokes expression  
						
						
						
					 
					
						2021-10-07 23:06:21 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							7561db5ed2 
							
						 
					 
					
						
						
							
							exo2: Implement (untested) SmcDecryptDeviceUniqueData  
						
						
						
					 
					
						2020-06-14 22:54:01 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							bc653fa855 
							
						 
					 
					
						
						
							
							exo2: Initial work on the exosphere rewrite.  
						
						... 
						
						
						
						exo2: Implement uncompressor stub and boot code up to Main().
exo2: implement some more init (uart/gic)
exo2: implement more of init
exo2: improve reg api, add keyslot flag setters
exo2: implement se aes decryption/enc
exo2: fix bugs in loader stub/mmu mappings
exo2: start skeletoning bootconfig/global context types
arch: fix makefile flags
exo2: implement through master key derivation
exo2: implement device master keygen
exo2: more init through start of SetupSocSecurity
exo2: implement pmc secure scratch management
se: implement sticky bit validation
libexosphere: fix building for arm32
libexo: fix makefile flags
libexo: support building for arm64/arm
sc7fw: skeleton binary
sc7fw: skeleton a little more
sc7fw: implement all non-dram functionality
exo2: fix DivideUp error
sc7fw: implement more dram code, fix reg library errors
sc7fw: complete sc7fw impl.
exo2: skeleton the rest of SetupSocSecurity
exo2: implement fiq interrupt handler
exo2: implement all exception handlers
exo2: skeleton the entire smc api, implement the svc invoker
exo2: implement rest of SetupSocSecurity
exo2: correct slave security errors
exo2: fix register definition
exo2: minor fixes 
						
					 
					
						2020-06-14 22:53:53 -07:00 
						 
				 
			
				
					
						
							
							
								SciresM 
							
						 
					 
					
						
						
						
						
							
						
						
							b38939adb5 
							
						 
					 
					
						
						
							
							Implement support for parsing/interacting with NCAs. ( #942 )  
						
						... 
						
						
						
						* fs: implement support for interacting with ncas.
* spl: extend to use virtual keyslots 
						
					 
					
						2020-05-12 15:44:19 -07:00 
						 
				 
			
				
					
						
							
							
								SciresM 
							
						 
					 
					
						
						
						
						
							
						
						
							7d041e853d 
							
						 
					 
					
						
						
							
							Switch atmosphere's build target to C++20. ( #952 )  
						
						... 
						
						
						
						* ams: update to build with gcc10/c++20
* remove mno-outline-atomics
* ams: take care of most TODO C++20s
* fusee/sept: update for gcc10
* whoosh, your code now uses pre-compiled headers
* make: dependency fixes 
						
					 
					
						2020-05-12 15:44:19 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							dd81610366 
							
						 
					 
					
						
						
							
							loader: update for 10.0.0  
						
						
						
					 
					
						2020-04-15 11:55:02 -07:00 
						 
				 
			
				
					
						
							
							
								SciresM 
							
						 
					 
					
						
						
						
						
							
						
						
							78653041d4 
							
						 
					 
					
						
						
							
							erpt: reimplement the sysmodule ( #875 )  
						
						... 
						
						
						
						* erpt: reimplement the sysmodule
* fatal: update for latest bindings
* erpt: amend logic for culling orphan attachments 
						
					 
					
						2020-04-15 11:55:01 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							18396d1a36 
							
						 
					 
					
						
						
							
							crypto: add aes (ecb, ctr, xts)  
						
						
						
					 
					
						2020-04-05 23:25:44 -07:00 
						 
				 
			
				
					
						
							
							
								SciresM 
							
						 
					 
					
						
						
						
						
							
						
						
							926d5a55d6 
							
						 
					 
					
						
						
							
							mem: implement most of StandardAllocator ( #860 )  
						
						... 
						
						
						
						This was tested using `https://github.com/node-dot-cpp/alloc-test ` plus a few other by-hand tests.
It seems to work for the case we care about (sysmodules without thread cache-ing).
External users are advised to build with assertions on and contact SciresM if you find issues.
This is a lot of code to have gotten right in one go, and it was written mostly after midnight while sick, so there are probably un-noticed issues. 
						
					 
					
						2020-03-30 20:41:21 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							3fd36b170d 
							
						 
					 
					
						
						
							
							crypto: add Sha256Context  
						
						
						
					 
					
						2020-03-18 00:15:01 -07:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							e12ddd7551 
							
						 
					 
					
						
						
							
							crypto/spl: implement rsa-oaep  
						
						
						
					 
					
						2020-03-02 19:51:08 -08:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							5a13be8918 
							
						 
					 
					
						
						
							
							pss: extra validity check  
						
						
						
					 
					
						2020-03-02 19:51:07 -08:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							3418d34136 
							
						 
					 
					
						
						
							
							crypto: constant-time pss (if it survives optimization)  
						
						
						
					 
					
						2020-03-02 19:51:06 -08:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							577e3936a6 
							
						 
					 
					
						
						
							
							crypto: implement RSA-2048-PSS  
						
						
						
					 
					
						2020-03-02 19:51:06 -08:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							98cc1dd870 
							
						 
					 
					
						
						
							
							crypto: Implement BigNum/ExpMod  
						
						
						
					 
					
						2020-03-02 19:51:06 -08:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							1e9368c770 
							
						 
					 
					
						
						
							
							ams: revamp assertion system  
						
						
						
					 
					
						2020-03-02 19:51:04 -08:00 
						 
				 
			
				
					
						
							
							
								Michael Scire 
							
						 
					 
					
						
						
						
						
							
						
						
							5fe629f2dc 
							
						 
					 
					
						
						
							
							vapours: new include style, add crypto  
						
						
						
					 
					
						2020-03-02 19:51:04 -08:00