class LockdownUnlock{
private:
/*snip*/
std::string rootCertificate; //Will this protect the data?
/*snip*/
public:
/*snip*/
}LDUnlock;
class LockdownUnlock{
private:
/*snip*/
std::string rootCertificate; //Will this protect the data?
/*snip*/
public:
/*snip*/
}LDUnlock;
No, la sezione protected
della classe serve a proteggere la variabile dal codice sulla stessa applicazione, non a proteggere dall'esterno. Protected
significa che questa variabile è disponibile per le istanze di questa classe e di tutte le sottoclassi. Privato significa che la variabile è accessibile solo da istanze di questa classe e pubblico è pubblico.
Non è nemmeno necessario "decodificare" l'applicazione per leggere il certificato, leggere il file binario sul blocco note è sufficiente.
Quindi non importa se metti su private
, protected
, public
o hardcode da qualche parte. Se qualcuno può leggere il file binario, può leggere il certificato.
Leggi altre domande sui tag debugging c++ architecture code-review