SlideShare a Scribd company logo
P R E S E N T E D B Y
S I N D H U V L
PGP Security - Mule
 Pretty Good Privacy (PGP) is a data encryption
and decryption computer program that provides
cryptographic privacy and authentication for data
communication.
 This extension adds PGP security on connector
communication. With PGP you can achieve end-to-
end security communication with signed and
encrypted messages between parties.
Encrypting and Decrypting :
 To encrypt and decrypt messages you need to configure
the following elements:
 A security manager: responsible of holding a security
provider, which contains the key rings, and the
encryption strategy to be used. This allows for the
encryption of all messages using the same key or to
facilitate the use of different key rings.
 A key manager: which is responsible for reading the key
rings.
 A credential accessor: which determines the key ring and
key manager to be used to encrypt/decrypt the message
being processed.
A full example is shown below:
 The pgpKeyManager (in the spring:beans tag) is the one
responsible for reading the rings. You have to set all the
parameters: public and secret rings, the alias id (the long
value in the ring) and the secret passphrase. In the same
section, you can see the credentials accessor which needs
to implement the CredentialsAccessor interface basically
returning the key id based on the message (MuleEvent).
Finally thepgp:security-managerglues both beans.
 You are ready to encrypt and decrypt messages in your
flows. The following two flows show how to use the
encrypt-transformer and decrypt-transformer to encrypt
and decrypt files.
Pgp security   mule
Configuring the Security
Manager :
Configuring the Key
Manager :
 To configure the
Security Manager you
need to reference your
key manager and your
encryption strategy.
The Key manager is
simple a reference to
your key manager ring.
 To configure your key manager
you have to create a spring bean
as shown before. You will need to
set the public and secret ring
files, the alias id and the secret
passphrase. As Mule uses the
bouncy castle library to
encrypt/decrypt messages we
recommend to obtain the alias id
(as a long value) using this
library. If Mule does not find
your id in the ring it will throw
an exception and it will list all the
available ids in your ring.
Configuring a Credential Accessor :
 To configure your credential accessor you need to
define a class which determines your key id. For
instance the following class (used in the example)
returns always the same fixed string thus all the
messages will be encrypted/decrypted using the
same key id. If you need to use different key ids then
return different strings according to the MuleEvent
received as a parameter.
public class FakeCredentialAccessor implements CredentialsAccessor
{
private String credentials = "John Smith (TestingKey)
<john.smith@somecompany.com>";
public FakeCredentialAccessor(){
}
public FakeCredentialAccessor(String string){
this.credentials = string;
}
public String getCredentials(){
return credentials;
}
public void setCredentials(String credentials){
this.credentials = credentials;
}
public Object getCredentials(MuleEvent event){
return this.credentials;
}
public void setCredentials(MuleEvent event, Object credentials){
// dummy
}
}
Configuration Reference :
 PGP Module
 This extension adds PGP security on endpoint
communication. With PGP you can achieve end-to-
end security communication with signed and
encrypted messages between parties. == Security
manager === Attributes of <security-manager…>
Name Type
Requir
ed
Default
Descrip
tion
Child Elements of <security-manager…> :
Name Cardinality Description
security-provider 0..1
Security provider for
PGP-related
functionality.
keybased-encryption-
strategy
0..1
The key-based PGP
encryption strategy to
use.
Security provider :
 Security provider for PGP-related functionality. ===
Attributes of <security-provider…>
Name Type Required Default
Descripti
on
keyManage
r-ref
string yes
Reference
to the key
manager to
use.
Child Elements of <security-provider…>
:
Name Cardinality Description
Keybased encryption
strategy
•The key-based PGP encryption strategy to use.
=== Attributes of <keybased-encryption-
strategy…>  table is as follows :
Name Type Required Default Description
keyManager-
ref
string yes
Reference to
the key
manager to
use.
credentialsAc
cessor-ref
string no
Reference to
the
credentials
accessor to
use.
checkKeyExp
irity
boolean no
Check key
expiration.
Thank You!!!!!!!!!

More Related Content

PPT
Mule security pgp with Example
PPT
Mule security - pgp
PPT
Mule security - pgp
PPTX
Using pgp with mule
PPTX
Encrption in mule
PPT
Secure Sockets Layer and Transport Layer Security
PPTX
Transport layer security (tls)
PPTX
Dprn3 u3 a1_ocov
Mule security pgp with Example
Mule security - pgp
Mule security - pgp
Using pgp with mule
Encrption in mule
Secure Sockets Layer and Transport Layer Security
Transport layer security (tls)
Dprn3 u3 a1_ocov

What's hot (20)

PPTX
Cryptology for security
PPTX
Cassandra
PDF
Transport Layer Security - Mrinal Wadhwa
PDF
Web security at Meteor (Pivotal Labs)
PPTX
TLS - Transport Layer Security
PPT
ssl
PPTX
Ssl in a nutshell
PPTX
Introduction to SSL and How to Exploit & Secure
PPTX
Transport layer security
DOCX
key-aggregate cryptosystem for scalable data sharing in cloud storage
PPT
Sniffing SSL Traffic
PDF
SSL Secure socket layer
PPT
PPT
PPTX
Introduction to SSL/TLS
PPTX
Securing TCP connections using SSL
PPTX
WS - SecurityPolicy
PPTX
All you need to know about transport layer security
Cryptology for security
Cassandra
Transport Layer Security - Mrinal Wadhwa
Web security at Meteor (Pivotal Labs)
TLS - Transport Layer Security
ssl
Ssl in a nutshell
Introduction to SSL and How to Exploit & Secure
Transport layer security
key-aggregate cryptosystem for scalable data sharing in cloud storage
Sniffing SSL Traffic
SSL Secure socket layer
Introduction to SSL/TLS
Securing TCP connections using SSL
WS - SecurityPolicy
All you need to know about transport layer security
Ad

Viewers also liked (20)

PDF
Email Security Overview
PPTX
S/MIME & E-mail Security (Network Security)
PPTX
Handson 1 (5/6)
PPT
Pretty good privacy
PDF
PGP based social network
PPTX
E mail security
PDF
Gnu Privacy Guard - Intro
PPTX
Using pgp with mule
PDF
PGP and Enigmail
PPTX
"Pretty Good Privacy": smuggling in the "Information Age"
PPT
Networksecurity&cryptography
PPTX
Presentation1 new (1) (1)cf
PPT
Network Security Tools and applications
PPTX
E securty
PPTX
Contaminacion del aire y de las aguas
PDF
Basic Network Security_Primer
PPTX
Party pronto pres new
PDF
Symantec Brightmail Gateway 9
PDF
DataMotion-IG1-TheEvolutionofEncryption
Email Security Overview
S/MIME & E-mail Security (Network Security)
Handson 1 (5/6)
Pretty good privacy
PGP based social network
E mail security
Gnu Privacy Guard - Intro
Using pgp with mule
PGP and Enigmail
"Pretty Good Privacy": smuggling in the "Information Age"
Networksecurity&cryptography
Presentation1 new (1) (1)cf
Network Security Tools and applications
E securty
Contaminacion del aire y de las aguas
Basic Network Security_Primer
Party pronto pres new
Symantec Brightmail Gateway 9
DataMotion-IG1-TheEvolutionofEncryption
Ad

Similar to Pgp security mule (20)

PPT
Mule security - pgp
PDF
PGP Encryption And Decryption With Mule ESB
PPTX
Ahmadabad mule soft_meetup_17april2021_mule4_cryptography
PPTX
Mulesoft Meetup Cryptography Module
PPT
PGP S/MIME
PPTX
Mulesoft encryption
PPTX
CryptoGraphy Module in Mulesoft
PPTX
module 4_7th sem_ Electronic Mail Security.pptx
PDF
Email Security Pretty Good Privacy (PGP),Services Provided by PGP.pdf
PPTX
Email sec11
PPT
Pgp smime
PPTX
Pretty good privacy
PDF
Network security cs9 10
PDF
unit4_securitypractice(oncase study).ppt
PPT
Lecture 8 mail security
PPT
PPT
email.ppt
PPTX
CRYPTOGRAPHY AND NETWORK SECURITY- E-Mail Security
Mule security - pgp
PGP Encryption And Decryption With Mule ESB
Ahmadabad mule soft_meetup_17april2021_mule4_cryptography
Mulesoft Meetup Cryptography Module
PGP S/MIME
Mulesoft encryption
CryptoGraphy Module in Mulesoft
module 4_7th sem_ Electronic Mail Security.pptx
Email Security Pretty Good Privacy (PGP),Services Provided by PGP.pdf
Email sec11
Pgp smime
Pretty good privacy
Network security cs9 10
unit4_securitypractice(oncase study).ppt
Lecture 8 mail security
email.ppt
CRYPTOGRAPHY AND NETWORK SECURITY- E-Mail Security

More from Sindhu VL (20)

PPTX
Mule - error handling
PPTX
Mule - beginners guide
PPTX
Core concepts - mule
PPTX
Error handling with respect to mule
PPTX
Core concepts in mule
PPTX
Basics of mule for beginners
PPTX
Mule testing
PPTX
Mule securing
PPTX
Mule debugging
PPTX
Service orchestration by using flows
PPTX
Configuration patterns in mule
PPTX
Bindings of components in mule
PPTX
Using maven with mule
PPTX
Using mule configuration patterns
PPTX
Using flows for service orchestration
PPTX
Component bindings in mule
PPTX
Mule requestor component
PPTX
Concepts in mule
PPTX
Enterprise service bus mule
PPTX
Mule errors
Mule - error handling
Mule - beginners guide
Core concepts - mule
Error handling with respect to mule
Core concepts in mule
Basics of mule for beginners
Mule testing
Mule securing
Mule debugging
Service orchestration by using flows
Configuration patterns in mule
Bindings of components in mule
Using maven with mule
Using mule configuration patterns
Using flows for service orchestration
Component bindings in mule
Mule requestor component
Concepts in mule
Enterprise service bus mule
Mule errors

Recently uploaded (20)

PDF
Urban Design Final Project-Site Analysis
PPT
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
PPTX
rapid fire quiz in your house is your india.pptx
PPTX
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
PPTX
HPE Aruba-master-icon-library_052722.pptx
PDF
Key Trends in Website Development 2025 | B3AITS - Bow & 3 Arrows IT Solutions
PDF
The Advantages of Working With a Design-Build Studio
PDF
Trusted Executive Protection Services in Ontario — Discreet & Professional.pdf
PPT
pump pump is a mechanism that is used to transfer a liquid from one place to ...
PPTX
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
PPTX
Implications Existing phase plan and its feasibility.pptx
PDF
Quality Control Management for RMG, Level- 4, Certificate
PPTX
building Planning Overview for step wise design.pptx
PPTX
DOC-20250430-WA0014._20250714_235747_0000.pptx
PPTX
Complete Guide to Microsoft PowerPoint 2019 – Features, Tools, and Tips"
PDF
Phone away, tabs closed: No multitasking
PPTX
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx
PPTX
mahatma gandhi bus terminal in india Case Study.pptx
PDF
Emailing DDDX-MBCaEiB.pdf DDD_Europe_2022_Intro_to_Context_Mapping_pdf-165590...
PPTX
Tenders & Contracts Works _ Services Afzal.pptx
Urban Design Final Project-Site Analysis
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
rapid fire quiz in your house is your india.pptx
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
HPE Aruba-master-icon-library_052722.pptx
Key Trends in Website Development 2025 | B3AITS - Bow & 3 Arrows IT Solutions
The Advantages of Working With a Design-Build Studio
Trusted Executive Protection Services in Ontario — Discreet & Professional.pdf
pump pump is a mechanism that is used to transfer a liquid from one place to ...
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
Implications Existing phase plan and its feasibility.pptx
Quality Control Management for RMG, Level- 4, Certificate
building Planning Overview for step wise design.pptx
DOC-20250430-WA0014._20250714_235747_0000.pptx
Complete Guide to Microsoft PowerPoint 2019 – Features, Tools, and Tips"
Phone away, tabs closed: No multitasking
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx
mahatma gandhi bus terminal in india Case Study.pptx
Emailing DDDX-MBCaEiB.pdf DDD_Europe_2022_Intro_to_Context_Mapping_pdf-165590...
Tenders & Contracts Works _ Services Afzal.pptx

Pgp security mule

  • 1. P R E S E N T E D B Y S I N D H U V L PGP Security - Mule
  • 2.  Pretty Good Privacy (PGP) is a data encryption and decryption computer program that provides cryptographic privacy and authentication for data communication.  This extension adds PGP security on connector communication. With PGP you can achieve end-to- end security communication with signed and encrypted messages between parties.
  • 3. Encrypting and Decrypting :  To encrypt and decrypt messages you need to configure the following elements:  A security manager: responsible of holding a security provider, which contains the key rings, and the encryption strategy to be used. This allows for the encryption of all messages using the same key or to facilitate the use of different key rings.  A key manager: which is responsible for reading the key rings.  A credential accessor: which determines the key ring and key manager to be used to encrypt/decrypt the message being processed.
  • 4. A full example is shown below:
  • 5.  The pgpKeyManager (in the spring:beans tag) is the one responsible for reading the rings. You have to set all the parameters: public and secret rings, the alias id (the long value in the ring) and the secret passphrase. In the same section, you can see the credentials accessor which needs to implement the CredentialsAccessor interface basically returning the key id based on the message (MuleEvent). Finally thepgp:security-managerglues both beans.  You are ready to encrypt and decrypt messages in your flows. The following two flows show how to use the encrypt-transformer and decrypt-transformer to encrypt and decrypt files.
  • 7. Configuring the Security Manager : Configuring the Key Manager :  To configure the Security Manager you need to reference your key manager and your encryption strategy. The Key manager is simple a reference to your key manager ring.  To configure your key manager you have to create a spring bean as shown before. You will need to set the public and secret ring files, the alias id and the secret passphrase. As Mule uses the bouncy castle library to encrypt/decrypt messages we recommend to obtain the alias id (as a long value) using this library. If Mule does not find your id in the ring it will throw an exception and it will list all the available ids in your ring.
  • 8. Configuring a Credential Accessor :  To configure your credential accessor you need to define a class which determines your key id. For instance the following class (used in the example) returns always the same fixed string thus all the messages will be encrypted/decrypted using the same key id. If you need to use different key ids then return different strings according to the MuleEvent received as a parameter.
  • 9. public class FakeCredentialAccessor implements CredentialsAccessor { private String credentials = "John Smith (TestingKey) <john.smith@somecompany.com>"; public FakeCredentialAccessor(){ } public FakeCredentialAccessor(String string){ this.credentials = string; } public String getCredentials(){ return credentials; } public void setCredentials(String credentials){ this.credentials = credentials; } public Object getCredentials(MuleEvent event){ return this.credentials; } public void setCredentials(MuleEvent event, Object credentials){ // dummy } }
  • 10. Configuration Reference :  PGP Module  This extension adds PGP security on endpoint communication. With PGP you can achieve end-to- end security communication with signed and encrypted messages between parties. == Security manager === Attributes of <security-manager…> Name Type Requir ed Default Descrip tion
  • 11. Child Elements of <security-manager…> : Name Cardinality Description security-provider 0..1 Security provider for PGP-related functionality. keybased-encryption- strategy 0..1 The key-based PGP encryption strategy to use.
  • 12. Security provider :  Security provider for PGP-related functionality. === Attributes of <security-provider…> Name Type Required Default Descripti on keyManage r-ref string yes Reference to the key manager to use.
  • 13. Child Elements of <security-provider…> : Name Cardinality Description Keybased encryption strategy •The key-based PGP encryption strategy to use. === Attributes of <keybased-encryption- strategy…>  table is as follows :
  • 14. Name Type Required Default Description keyManager- ref string yes Reference to the key manager to use. credentialsAc cessor-ref string no Reference to the credentials accessor to use. checkKeyExp irity boolean no Check key expiration.