견고성: 숨겨진 변수가 가능한가?
1600 단어 discusschallengeweb3programming
공식적으로 우리는 어떻게든 트랜잭션(또는 일련의 트랜잭션)을 만들어서 결국 일부 계약의 특정 위치
p에 임의의 값이 저장되고 이 값이 특정 위치q에 저장될 확률이 1 / 2^256는 모든 q에 대해(또는 다른 일부q에 대해 무시할 정도로 적음)?우리는 값이 무엇인지 알고 있는지 여부에 상관하지 않으며 값이 어디에 저장되어 있는지 표시하고 싶지 않습니다. 나는 또한 여기에서 임의의 신탁을 선호하지 않습니다.
나는 사실 이 문제에 대한 답을 모른다! 사실, 그리고 나는 당신의 의견을 보기 위해 여기에 있습니다! 자, 함께 브레인스토밍합시다 🧠🌪️
내 시도
내 초기 아이디어는 다음 런타임 코드로 스토리지 계약을 맺는 것이었습니다.
PUSH1 0xFF // our arbitrary value
<some position>
SSTORE
내가
delegatecall 이 사람이 어떻게든 위치를 할당한 후에 내 저장소에 임의의 값을 갖게 됩니다.그런 다음 트랜잭션에서 눈에 띄지 않게 이 계약에 해당 위치 값을 공급하는 방법을 해결해야 합니다.
내가 시도한 것:
selfdestruct이 이를 암시적으로 수행하는 유일한 방법이지만 내부 트랜잭션에서 볼 수 있습니다. selfdestruct가 작동하더라도 저장소도 정리됩니다. 이것은 호기심과 도전을 위한 것입니다. 이 글을 쓰는 시점에서 나는 이것이 전혀 불가능하다고 99% 확신합니다. 그럼에도 불구하고 공식적으로 증명할 수 없는 것은 확신할 수 없습니다. 여기 있습니다.
기타 관심 사항:
.slot할 수 있습니까? Reference
이 문제에 관하여(견고성: 숨겨진 변수가 가능한가?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/erhant/solidity-is-a-hidden-variable-possible-4e80텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)