Has anyone figured out how to use PSS and SHA256 *WITH *CryptoPP-PEM? I also tried reporting this to the issuer tracker at https://github.com/noloader/cryptopp-pem and nobody has replied. I can't imagine I'm the only person using this library in order to achieve this with X509 Certs.
Thanks, Frank On Wednesday, April 17, 2024 at 11:43:54 AM UTC-4 HELA YAICH wrote: > Hello, > (I'm new user of ns3 and crypto) > I have link errors with Crypto++. These errors indicate that the compiler > cannot find certain functions or classes defined in Crypto++. This can > happen if Crypto++ is not correctly linked to my project. However, I tried > to modify my project's CMakeLists.txt file as follows: > set(target_prefix scratch_) > > function(create_scratch source_files) > # Return early if no sources in the subdirectory > list(LENGTH source_files number_sources) > if(number_sources EQUAL 0) > return() > endif() > > # If the scratch has more than a source file, we need to find the source > with > # the main function > set(scratch_src) > foreach(source_file ${source_files}) > file(READ ${source_file} source_file_contents) > string(REGEX MATCHALL "main[(| (]" main_position > "${source_file_contents}") > if(CMAKE_MATCH_0) > set(scratch_src ${source_file}) > endif() > endforeach() > > if(NOT scratch_src) > return() > endif() > > # Get parent directory name > get_filename_component(scratch_dirname ${scratch_src} DIRECTORY) > string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}" "" scratch_dirname > "${scratch_dirname}" > ) > string(REPLACE "/" "_" scratch_dirname "${scratch_dirname}") > > # Get source name > get_filename_component(scratch_name ${scratch_src} NAME_WE) > > set(target_prefix scratch_) > if(scratch_dirname) > # Join the names together if dirname is not the scratch folder > set(target_prefix scratch${scratch_dirname}_) > endif() > > # Get source absolute path and transform into relative path > get_filename_component(scratch_src ${scratch_src} ABSOLUTE) > get_filename_component(scratch_absolute_directory ${scratch_src} > DIRECTORY) > string(REPLACE "${PROJECT_SOURCE_DIR}" "${CMAKE_OUTPUT_DIRECTORY}" > scratch_directory ${scratch_absolute_directory} > ) > add_executable(${target_prefix}${scratch_name} "${source_files}") > if(${NS3_STATIC}) > target_link_libraries( > ${target_prefix}${scratch_name} ${LIB_AS_NEEDED_PRE_STATIC} > ${lib-ns3-static} > ) > else() > target_link_libraries( > ${target_prefix}${scratch_name} "${ns3-libs}" "${ns3-contrib-libs}" > "${ns3-external-libs}" > ) > endif() > set_runtime_outputdirectory( > ${scratch_name} ${scratch_directory}/ ${target_prefix} > ) > endfunction() > > # Scan *.cc files in ns-3-dev/scratch and build a target for each > file(GLOB single_source_file_scratches CONFIGURE_DEPENDS > ${CMAKE_CURRENT_SOURCE_DIR}/*.cc) > foreach(scratch_src ${single_source_file_scratches}) > create_scratch(${scratch_src}) > endforeach() > > # Scan *.cc files in ns-3-dev/scratch subdirectories and build a target > for each > # subdirectory > file( > GLOB_RECURSE scratch_subdirectories > CONFIGURE_DEPENDS > LIST_DIRECTORIES true > ${CMAKE_CURRENT_SOURCE_DIR}/** > ) > # Filter out files > foreach(entry ${scratch_subdirectories}) > if(NOT (IS_DIRECTORY ${entry})) > list(REMOVE_ITEM scratch_subdirectories ${entry}) > endif() > endforeach() > > foreach(subdir ${scratch_subdirectories}) > if(EXISTS ${subdir}/CMakeLists.txt) > # If the subdirectory contains a CMakeLists.txt file > # we let the CMake file manage the source files > # > # Use this if you want to link to external libraries > # without creating a module > add_subdirectory(${subdir}) > else() > # Otherwise we pick all the files in the subdirectory > # and create a scratch for them automatically > file(GLOB scratch_sources CONFIGURE_DEPENDS ${subdir}/*.cc) > create_scratch("${scratch_sources}") > endif() > endforeach() > find_external_library(DEPENDENCY_NAME cryptopp > HEADER_NAME aes.h > LIBRARY_NAME cryptopp > SEARCH_PATHS /usr/include/cryptopp) > > > if(${CRYPTOPP_FOUND}) # Notice that the contents of DEPENDENCY_NAME became > a prefix for the _FOUND variable > find_package(cryptopp REQUIRED) > include_directories(${CRYPTOPP_INCLUDE_DIRS}) > link_libraries(${CRYPTOPP_LIBRARIES}) > endif() > add_executable(${target_prefix}${scratch_name} "fanetex.cc") > target_link_libraries(${target_prefix}${scratch_name} PRIVATE cryptopp) > > can you help me to solve this problem ? Thank you [image: Capture d’écran > 2024-04-17 114345.png] > > Le mardi 16 avril 2024 à 21:53:22 UTC-5, Frank Sapone a écrit : > >> I grabbed it but it's not relevant. I need to have a certificate with >> RSA PSS that can be read by CryptoPP with the X509Cert lib. Is it possible >> to do this? >> >> On Tuesday, April 16, 2024 at 3:19:47 PM UTC-4 Jeffrey Walton wrote: >> >>> On Tue, Apr 16, 2024 at 1:44 PM One Sini <one...@gmail.com> wrote: >>> >>>> I wasn't entirely satisfied with the security, so I've adjusted the >>>> code. I'm not sure if that helps you, depending on what you're doing with >>>> it. >>>> >>>> This code uses RSA with OAEP (Optimal Asymmetric Encryption Padding) to >>>> avoid security issues like padding oracle attacks. It generates RSA keys >>>> with a length of 2048 bits, encrypts the message with OAEP padding, and >>>> then decrypts it. >>>> >>>> Best Regards Satoshi >>>> >>> >>> I deleted the message from the group. The *.pdf and *.pages smells of >>> malware. >>> >>> If you want to provide code, please inline it or provide it as a text >>> attachment. >>> >>> Jeff >>> >>>> -- You received this message because you are subscribed to the Google Groups "Crypto++ Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to cryptopp-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/cryptopp-users/db9bad9f-be9e-4a25-a09f-d52ce28adec0n%40googlegroups.com.