println("//demo for co.junwei.bswabe: start to setup"); Bswabe.setup(pub, msk); println("//demo for co.junwei.bswabe: end to setup"); println("\n//demo for co.junwei.bswabe: start to keygen"); prv = Bswabe.keygen(pub, msk, attr); println("//demo for co.junwei.bswabe: end to keygen"); println("\n//demo for co.junwei.bswabe: start to delegate_ok"); prv_delegate_ok = Bswabe.delegate(pub, prv, attr_delegate_ok); println("//demo for co.junwei.bswabe: end to delegate_ok"); println("\n//demo for co.junwei.bswabe: start to delegate_ko"); prv_delegate_ko = Bswabe.delegate(pub, prv, attr_delegate_ko); println("//demo for co.junwei.bswabe: end to delegate_ko"); println("\n//demo for co.junwei.bswabe: start to enc"); BswabeCphKey crypted = Bswabe.enc(pub, policy); cph = crypted.cph; println("//demo for co.junwei.bswabe: end to enc"); println("\n//demo for co.junwei.bswabe: start to dec"); result = Bswabe.dec(pub, prv, cph); println("//demo for co.junwei.bswabe: end to dec"); if ((result.b == true) && (result.e.equals(crypted.key) == true)) System.out.println("succeed in decrypt"); println("\n//demo for co.junwei.bswabe: start to dec with ok delegated key"); result = Bswabe.dec(pub, prv_delegate_ok, cph);