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 <[email protected]> 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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/cryptopp-users/db9bad9f-be9e-4a25-a09f-d52ce28adec0n%40googlegroups.com.