├── src ├── scheme │ ├── Bswabe.java │ ├── BswabeCph.java │ ├── BswabeToken.java │ ├── BswabeMsk.java │ ├── BswabePrv.java │ └── BswabePub.java ├── demo │ └── DemoForBswabe.java └── index │ └── Index.java ├── libs ├── jpbc-api-1.2.1.jar └── jpbc-plaf-1.2.1.jar └── README.md /src/scheme/Bswabe.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanfen018/Attribute-Based-Searchable-Encryption/HEAD/src/scheme/Bswabe.java -------------------------------------------------------------------------------- /libs/jpbc-api-1.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanfen018/Attribute-Based-Searchable-Encryption/HEAD/libs/jpbc-api-1.2.1.jar -------------------------------------------------------------------------------- /libs/jpbc-plaf-1.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanfen018/Attribute-Based-Searchable-Encryption/HEAD/libs/jpbc-plaf-1.2.1.jar -------------------------------------------------------------------------------- /src/demo/DemoForBswabe.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wanfen018/Attribute-Based-Searchable-Encryption/HEAD/src/demo/DemoForBswabe.java -------------------------------------------------------------------------------- /src/scheme/BswabeCph.java: -------------------------------------------------------------------------------- 1 | package scheme; 2 | 3 | import it.unisa.dia.gas.jpbc.Element; 4 | 5 | public class BswabeCph { 6 | 7 | public Element w; /* G_1 */ 8 | public Element w0; /* G_1 */ 9 | public Element u_gate; /* G_1*/ 10 | //public BswabePolicy p; 11 | } 12 | -------------------------------------------------------------------------------- /src/index/Index.java: -------------------------------------------------------------------------------- 1 | package index; 2 | 3 | public class Index { 4 | public String word; 5 | public String [] file; 6 | public Index(){ 7 | 8 | } 9 | public Index(String word,String []file){ 10 | this.word = word; 11 | this.file = file; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/scheme/BswabeToken.java: -------------------------------------------------------------------------------- 1 | package scheme; 2 | 3 | import it.unisa.dia.gas.jpbc.Element; 4 | 5 | public class BswabeToken { 6 | public Element tok1; /* G_2 */ 7 | public Element tok2; /* G_2 */ 8 | public Element tok3; /* G_2 */ 9 | public Element tok4; /* G_2 */ 10 | public Element tok5; /* G_T */ 11 | } 12 | -------------------------------------------------------------------------------- /src/scheme/BswabeMsk.java: -------------------------------------------------------------------------------- 1 | package scheme; 2 | 3 | import it.unisa.dia.gas.jpbc.Element; 4 | 5 | public class BswabeMsk { 6 | /* 7 | * A master secret key 8 | */ 9 | public Element a,b,c; /* Z_r */ 10 | public Element []r;/*Z_r*/ 11 | public Element []x ;/*G_1*/ 12 | 13 | 14 | 15 | public Element g_alpha; /* G_2 */ 16 | } 17 | -------------------------------------------------------------------------------- /src/scheme/BswabePrv.java: -------------------------------------------------------------------------------- 1 | package scheme; 2 | 3 | //import java.util.ArrayList; 4 | 5 | import it.unisa.dia.gas.jpbc.Element; 6 | 7 | public class BswabePrv { 8 | /* 9 | * A private key 10 | */ 11 | public Element v; /* G_2 */ 12 | public Element sig_user; /* G_2 */ 13 | public Element y_user; /* G_T */ 14 | 15 | public Element sig[]; 16 | public Element y[]; 17 | 18 | 19 | 20 | //ArrayList comps; /* BswabePrvComp */ 21 | } -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | # Attribute-Based-Searchable-Encryption, you can find more details about the schema in https://eprint.iacr.org/2017/782. 3 |

4 |

5 | About the import: 6 |

7 |

8 | Import the two jars of jpbc-api-1.2.1.jar and jpbc-plaf-1.2.1.jar 9 |

10 |

11 | File not found: 12 |

13 |

14 | Add the downloaded folder jpbc-1.2.1.zip(must be the .zip folder) into the source. 15 |

16 | -------------------------------------------------------------------------------- /src/scheme/BswabePub.java: -------------------------------------------------------------------------------- 1 | package scheme; 2 | 3 | import it.unisa.dia.gas.jpbc.Element; 4 | import it.unisa.dia.gas.jpbc.Pairing; 5 | 6 | public class BswabePub{ 7 | /* 8 | * A public key 9 | */ 10 | public String pairingDesc; 11 | public Pairing p; 12 | public Element g1; /* G_1*/ 13 | public Element g_a; /* G_1 */ 14 | public Element g_b; /* G_1 */ 15 | public Element g_c; /* G_1 */ 16 | public Element []u ; /* G_1*/ 17 | public Element []y ; /* G_T*/ 18 | public Element g2; /* G_2 */ 19 | 20 | 21 | 22 | 23 | 24 | //public Element gp; /* G_2 */ 25 | //public Element g_hat_alpha; /* G_T */ 26 | } 27 | --------------------------------------------------------------------------------