TON is an innovative blockchain that incorporates novel concepts in smart contract design. Coming a number of years after Ethereum, the builders of TON had the advantage of being able to evaluate the successes and failures of the Ethereum Virtual Machine (EVM) model. For more on this, check out six unique aspects of TON blockchain that will surprise Solidity developers.

In this article, we’ll go through a couple of the most interesting features of the TON blockchain, then we’ll go through a list of best practices for developers programming smart contracts in FunC.

Contract Sharding

When developing contracts for the EVM, you generally break up the project into several contracts for convenience. In some cases, it is possible to implement all the functionality in one contract, and even where contract splitting was necessary (for example, Liquidity Pairs in the Automated Market Maker) this did not lead to any special difficulties. Transactions are executed in their entirety: either everything works out, or everything reverts.

In TON, it is strongly recommended to avoid “unbounded data structures” and split a single logical contract into small pieces, each of which manages a small amount of data. The basic example is the implementation of TON Jettons. This is TON's version of Ethereum's ERC-20 token standard. Briefly, we have:

  1. One jetton-minter that stores total_supply, minter_address, and a couple of refs: token description (metadata) and jetton_wallet_code.
  2. And a lot of jetton-wallet, one for each owner of these jettons. Each such wallet stores only the owner's address, their balance, jetton-minter address, and a link to jetton_wallet_code.

This is necessary so that the transfer of Jettons occurs directly between wallets and does not affect any high-load addresses, which is fundamental for the parallel processing of transactions.

That is, get ready so that your contract turns into a "group of contracts", and they will actively interact with each other.

What follows from this?

Partial Execution of Transactions is Possible

A new unique property appears in the logic of your contract: partial execution of transactions.

For example, consider the message flow of a standard TON Jetton:

TON Jetton message flow

As follows from the diagram,

  1. sender sends an op::transfer message to its wallet (sender_wallet)
  2. sender_wallet reduces the token balance
  3. sender_wallet sends an op::internal_transfer message to the recipient's wallet (destination_wallet)
  4. destination_wallet increases its token balance
  5. destination_wallet sends op::transfer_notification to its owner (destination)
  6. destination_wallet returns excess gas with op::excesses message on response_destination (usually sender)

Note that if the destination_wallet was unable to process the op::internal_transfer message (an exception occurred or the gas ran out), then this part and subsequent steps will not be executed. But the first step (reducing the balance in sender_wallet) will be completed. The result is a partial execution of the transaction, an inconsistent state of the Jetton, and, in this case, the loss of money.

In the worst case scenario, all the tokens can be stolen in this way. Imagine that you first accrue bonuses to the user, and then send an op::burn message to their Jetton wallet, but you cannot guarantee that the op::burn will be processed successfully.

Tip #1: Always Draw Message Flow Diagrams

Even in a simple contract like a TON Jetton, there are already quite a few messages, senders, receivers, and pieces of data contained in messages. Now imagine how it looks when you’re developing something a little more complex, like a decentralized exchange (DEX) where the number of messages in one workflow can exceed ten.

An example message flow demonstrating the importance of visualization

At CertiK, we use the DOT language to describe and update such diagrams during the course of the audit. Our auditors find that this helps them visualize and understand the complex interactions within and between contracts.

Tip #2: Avoid Fails and Catch Bounced Messages

Using the message flow, first define the entry point. This is the message that starts the cascade of messages in your group of contracts (“consequences”). It is here that everything needs to be checked (payload, gas supply, etc.) in order to minimize the possibility of failure in subsequent stages.

If you are not sure whether it will be possible to fulfill all your plans (for example, whether the user has enough tokens to complete the deal), it means that the message flow is probably built incorrectly.

In subsequent messages (consequences), all throw_if()/throw_unless() will play the role of asserts rather than actually checking something.

Many contracts also process bounced messages just in case.

For example, in TON Jetton, if the recipient's wallet cannot accept any tokens (it depends on the logic for receiving), then the sender's wallet will process the bounced message and return the tokens to its own balance.

() on_bounce (slice in_msg_body) impure {
    in_msg_body~skip_bits(32);  ;;0xFFFFFFFF

    (int balance, slice owner_address, slice jetton_master_address, cell jetton_wallet_code) = load_data();

    int op = in_msg_body~load_op();

    throw_unless(error::unknown_op, (op == op::internal_transfer) | (op == op::burn_notification));

    int query_id = in_msg_body~load_query_id();
    int jetton_amount = in_msg_body~load_coins();

    balance += jetton_amount;
    save_data(balance, owner_address, jetton_master_address, jetton_wallet_code);
}

In general, we recommend processing bounced messages, however, they can’t be used as a means of full protection from failed message processing and incomplete execution.

It takes gas to send a bounced message and process it, and if there isn’t enough provided by the sender, then no bounced.

Secondly, TON does not provide for a chain of jumps. This means a bounced message can't be re-bounced. For example, if the second message is sent after the entry message, and the second one triggers the third one, then the entry contract will not be aware of the failure of processing the third message. Similarly, if the processing of the first sends the second and the third, then the failure of the second will not affect the processing of the third.

Tip #3: Expect a Man-in-the-Middle of the Message Flow

A message cascade can be processed over many blocks. Assume that while one message flow is running, an attacker can initiate a second one in parallel. That is, if a property was checked at the beginning (e.g. whether the user has enough tokens), do not assume that at the third stage in the same contract they will still satisfy this property.

Recommendation #4: Use a Carry-Value Pattern

It follows from the previous paragraph that messages between contracts must carry valuables.

In the same TON Jetton, this is demonstrated: sender_wallet subtracts the balance and sends it with an op::internal_transfer message to destination_wallet, and it, in turn, receives the balance with the message and adds it to its own balance (or bounces it back).

And here is an example of incorrect implementation. Why can't you find out your Jetton balance on-chain? Because such a question does not fit the pattern. By the time the response to the op::get_balance message reaches the requester, this balance could already have been spent by someone.

In this case, you can implement an alternative:

Carry-value pattern usage example

  1. master sends a message op::provide_balance to the wallet
  2. wallet zeroes its balance and sends back op::take_balance
  3. master receives the money, decides if it has enough, and either uses it (debits something in return) or sends it back to wallet
Tip #5: Return Value Instead of Rejecting

From the previous observation, it follows that your group of contracts will often receive not just a request, but a request along with a value. So you can't just refuse to execute the request (via throw_unless()), you have to send the Jettons back to the sender.

For example, a typical flow start (see TON Jetton message flow):

  1. sender sends an op::transfer message via sender_wallet to your_contract_wallet, specifying forward_ton_amount and forward_payload for your contract.
  2. sender_wallet sends an op::internal_transfer message to your_contract_wallet.
  3. your_contract_wallet sends an op::transfer_notification message to your_contract, delivering forward_ton_amount, forward_payload, and the sender_address and jetton_amount.
  4. And here in your contract in handle_transfer_notification() the flow begins.

There you need to figure out what kind of request it was, whether there is enough gas to complete it, and whether everything is correct in the payload. At this stage, you should not use throw_if()/throw_unless(), because then the Jettons will simply be lost, and the request will not be executed. It's worth using the try-catch statements available starting from FunC v0.4.0.

If something does not meet the expectations of your contract, the Jettons must be returned.

We found an example of this vulnerable implementation in a recent audit.

() handle_transfer_notification(...) impure {
...
    int jetton_amount = in_msg_body~load_coins();
    slice from_address = in_msg_body~load_msg_addr();
    slice from_jetton_address = in_msg_body~load_msg_addr();

    if (msg_value < gas_consumption) { ;; not enough gas provided
        if (equal_slices(from_jetton_address, jettonA_address)) {
            var msg = begin_cell()
                .store_uint(0x18, 6)
                .store_slice(jettonA_wallet_address)
                .store_coins(0)
                .store_uint(1, 1 + 4 + 4 + 64 + 32 + 1 + 1)
            ...
        }
    ...
}

As you can see, here the "return" is sent to jettonA_wallet_address, not sender_address. Since all decisions are made based on the analysis of in_msg_body, an attacker can forge a fake message and extract the money. Always send the return to sender_address.

If your contract accepts Jettons, it is impossible to know if it was indeed the expected Jetton that came, or just an op::transfer_notification from someone.

If your contract receives unexpected or unknown Jettons, they must also be returned.

TON Smart Contract Developer Must Control the Gas

In Solidity, gas is not much of a concern for contract developers. If the user provides too little gas, everything will be reverted as if nothing had happened (but the gas will not be returned). If they provide enough, the actual costs will automatically be calculated and deducted from their balance.

In TON, the situation is different:

  1. If there is not enough gas, the transaction will be partially executed.
  2. If there is too much gas, the excess must be returned. This is the developer’s responsibility.
  3. If a “group of contracts” exchanges messages, then control and calculation must be carried out in each message.

TON cannot automatically calculate the gas. The complete execution of the transaction with all its consequences can take a long time, and by the end, the user may not have enough toncoins in their wallet. The carry-value principle is used again here.

Tip #6: Calculate Gas and Check msg_value

According to our message flow diagram, we can estimate the cost of each handler in each of the scenarios and insert a check for the sufficiency of msg_value.

You can’t just demand with a margin, say 1 TON (the gas_limit on mainnet as of the date of writing) because this gas must be divided among the “consequences”. Let's say your contract sends three messages, then you can only send 0.33 TON to each. This means that they should “demand” less. It’s important to calculate the gas requirements of your whole contract carefully.

Things get more complicated if, during development, your code starts sending more messages. Gas requirements need to be rechecked and updated.

Tip #7: Return Gas Excesses Carefully

If excess gas is not returned to the sender, the funds will accumulate in your contracts over time. In principle, nothing terrible, this is just suboptimal practice. You can add a function for raking out excesses, but popular contracts like TON Jetton still return to the sender with the message op::excesses.

TON has a useful mechanism: SEND_MODE_CARRY_ALL_REMAINING_MESSAGE_VALUE = 64. When using this mode in send_raw_message(), the rest of the gas will be forwarded further with the message (or back) to the new recipient. It is convenient if the message flow is linear: each message handler sends only one message. But there are cases when it is not recommended to use this mechanism:

  1. If there are no other non-linear handlers in your contract. storage_fee is deducted from the balance of the contract, and not from the incoming gas. This means that over time, storage_fee can eat up the entire balance because everything that comes in has to go out.
  2. If your contract emits events, i.e. sends a message to an external address. The cost of this action is deducted from the balance of the contract, and not from msg_value.
() emit_log_simple (int event_id, int query_id) impure inline {
    var msg = begin_cell()
        .store_uint (12, 4)             ;; ext_out_msg_info$11 addr$00
        .store_uint (1, 2)              ;; addr_extern$01
        .store_uint (256, 9)            ;; len:(## 9)
        .store_uint(event_id, 256);     ;; external_address:(bits len)
        .store_uint(0, 64 + 32 + 1 + 1) ;; lt, at, init, body
        .store_query_id(query_id)
        .end_cell();
    
    send_raw_message(msg, SEND_MODE_REGULAR);
}
  1. If your contract attaches value when sending messages or uses SEND_MODE_PAY_FEES_SEPARETELY = 1. These actions deduct from the balance of the contract, which means that returning unused is "working at a loss."

In the indicated cases, a manual approximate calculation of the surplus is used:

int ton_balance_before_msg = my_ton_balance - msg_value;
int storage_fee = const::min_tons_for_storage - min(ton_balance_before_msg, const::min_tons_for_storage);
msg_value -= storage_fee + const::gas_consumption;

if(forward_ton_amount) {
    msg_value -= (forward_ton_amount + fwd_fee);
...
}

if (msg_value > 0) {    ;; there is still something to return

var msg = begin_cell()
    .store_uint(0x10, 6)
    .store_slice(response_address)
    .store_coins(msg_value)
...

Remember, if the value of the contract balance runs out, the transaction will be partially executed, and this cannot be allowed.

TON Smart Contract Developer Must Manage the Storage

A typical message handler in TON follows this approach:

() handle_something(...) impure {
    (int total_supply, <a lot of vars>) = load_data();
    ... ;; do something, change data
    save_data(total_supply, <a lot of vars>);
}

Unfortunately, we are noticing a trend: <a lot of vars> is a real enumeration of all contract data fields. For example,

(
int total_supply, int swap_fee, int min_amount, int is_stopped, int user_count, int max_user_count, 
slice admin_address, slice router_address, slice jettonA_address, slice jettonA_wallet_address, 
int jettonA_balance, int jettonA_pending_balance, slice jettonB_address, slice jettonB_wallet_address, 
int jettonB_balance, int jettonB_pending_balance, int mining_amount, int datetime_amount, int minable_time, 
int half_life, int last_index, int last_mined, cell mining_rate_cell, cell user_info_dict, cell operation_gas, 
cell content, cell lp_wallet_code
) = load_data();

This approach has a number of disadvantages.

First, if you decide to add another field, say is_paused, then you need to update the load_data()/save_data() statements throughout the contract. And this is not only labor-intensive, but it also leads to hard-to-catch errors.

In a recent CertiK audit, we noticed the developer mixed up two arguments in places, and wrote:

save_data(total_supply, min_amount, swap_fee, ...

Without an external audit performed by a team of experts, finding such a bug is very difficult. The function was rarely used, and both confused parameters usually had a value of zero. You really have to know what you’re looking for to pick up on an error like this.

Secondly, there is "namespace pollution". Let's explain what the problem is with another example from an audit. In the middle of the function, the input parameter read:

int min_amount = in_msg_body~load_coins();

That is, there was a shadowing of the storage field by a local variable, and at the end of the function, this replaced value was stored in storage. The attacker had the opportunity to overwrite the state of the contract. The situation is aggravated by the fact that FunC allows the redeclaration of variables: “This is not a declaration, but just a compile-time insurance that min_amount has type int.”

And finally, parsing the entire storage and packing it back on every call to every function increases the gas cost.

Tip #8: Use Nested Storage

We recommend the following storage organization approach:

() handle_something(...) impure {
    (slice swap_data, cell liquidity_data, cell mining_data, cell discovery_data) = load_data();
    (int total_supply, int swap_fee, int min_amount, int is_stopped) = swap_data.parse_swap_data();
    …
    swap_data = pack_swap_data(total_supply + lp_amount, swap_fee, min_amount, is_stopped);
    save_data(swap_data, liquidity_data, mining_data, discovery_data);
}

Storage consists of blocks of related data. If a parameter is used in each function, for example, is_paused, then it is provided immediately by load_data(). If a parameter group is needed only in one scenario, then it does not need to be unpacked, it will not have to be packed, and it will not clog the namespace.

If the storage structure requires changes (usually adding a new field), then much fewer edits will have to be made.

Moreover, the approach can be repeated. If there are 30 storage fields in our contract, then initially you can get four groups, and then get a couple of variables and another subgroup from the first group. The main thing is not to overdo it.

Note that since a cell can store up to 1023 bits of data and up to 4 references, you will have to split the data into different cells anyway.

Hierarchical data is one of the main features of TON, let's use it for its intended purpose.

Global variables can be used, especially at the prototyping stage, where it is not entirely obvious what will be stored in the contract.

global int var1;
global cell var2;
global slice var3;

() load_data() impure {
    var cs = get_data().begin_parse();
    var1 = cs~load_coins();
    var2 = cs~load_ref();
    var3 = cs~load_bits(512);
}

() save_data() impure {
    set_data(
        begin_cell()
            .store_coins(var1)
            .store_ref(var2)
            .store_bits(var3)
            .end_cell()
        );
}

That way, if you find out that you need another variable, you just add a new global variable and modify load_data() and save_data(). No changes throughout the contract are needed. However, since there is a limitation on the number of global variables (no more than 31), this pattern can be combined with the "nested storage" recommended above.

Global variables are also often more expensive than storing everything on the stack. This, however, depends on the number of stack permutations, so it is a good idea to prototype with globals and, when storage structure is completely clear, to switch to on stack variables with a "nested" pattern.

Tip #9: Use end_parse()

Use end_parse() wherever possible when reading data from storage and from the message payload. Since TON uses bit streams with variable data format, it’s helpful to ensure that you read as much as you write. This can save you an hour of debugging.

Tip #10: Use More Helper Functions, and Avoid Magic Numbers

This tip is not unique to FunC but it is especially relevant here. Write more wrappers, and helper functions, and declare more constants.

FunC initially has an incredible amount of magic numbers. If the developer does not make any effort to limit their usage, the result is something like this:

var msg = begin_cell()
    .store_uint(0xc4ff, 17)         ;; 0 11000100 0xff
    .store_uint(config_addr, 256)
    .store_grams(1 << 30)           ;; ~1 gram of value
    .store_uint(0, 107)
    .store_uint(0x4e565354, 32)
    .store_uint(query_id, 64)
    .store_ref(vset);
    
send_raw_message(msg.end_cell(), 1);

This is code from a real project, and it scares off newbies.

Fortunately, in recent versions of FunC, a couple of standard declarations can make the code clearer and more expressive. For example:

const int SEND_MODE_REGULAR = 0;
const int SEND_MODE_PAY_FEES_SEPARETELY = 1;
const int SEND_MODE_IGNORE_ERRORS = 2;
const int SEND_MODE_CARRY_ALL_REMAINING_MESSAGE_VALUE = 64;

builder store_msgbody_prefix_stateinit(builder b) inline {
    return b.store_uint(4 + 2 + 1, 1 + 4 + 4 + 64 + 32 + 1 + 1 + 1);
}

builder store_body_header(builder b, int op, int query_id) inline {
    return b.store_uint(op, 32).store_uint(query_id, 64);
}

() mint_tokens(slice to_address, cell jetton_wallet_code, int amount, cell master_msg) impure {
    cell state_init = calculate_jetton_wallet_state_init(to_address, my_address(), jetton_wallet_code);
    slice to_wallet_address = calculate_address_by_state_init(state_init);
    
    var msg = begin_cell()
        .store_msg_flags(BOUNCEABLE)
        .store_slice(to_wallet_address)
        .store_coins(amount)
        .store_msgbody_prefix_stateinit()
        .store_ref(state_init)
        .store_ref(master_msg);

    send_raw_message(msg.end_cell(), SEND_MODE_REGULAR);
}

We love expressive code!

Conclusion

In this article, we’ve gone through some of the unique features developers will encounter when programming smart contracts on TON using FunC. We’ve also provided 10 tips we’ve learned throughout the course of our audits that will make your experience as smooth as possible.

We’re excited to be supporting the TON ecosystem and working with the many great projects being built on this new and innovative blockchain platform.

For an audit of your smart contract code, or to consult with our team of auditors and security experts, don’t hesitate to get in touch at CertiK.com.


CertiK is a pioneer in blockchain security, leveraging best-in-class AI technology and expert manual review to protect and monitor blockchain protocols and smart contracts. Founded in 2018 by professors from Yale University and Columbia University, CertiK secures the Web3 world by applying cutting-edge innovations from academia to enterprise, enabling mission-critical applications to scale safely.

 

https://blog.ton.org/secure-smart-contract-programming-in-func

메가톤 파이낸스에서 위믹스 페어에 예치하는 방법

 

  1. 메가톤 파이낸스(https://megaton.fi/)에 접속 후 [Connect Wallet] 버튼을 눌러 원하는 톤 지원 지갑을 연결해주세요.

 

2. 톤 지원 지갑을 성공적으로 연결 후 [Deposit] 탭을 눌러주세요.

 

3. 이벤트 *대상 페어 중 원하는 페어를 선택 후 오른쪽의 [Manage] 버튼을 눌러주세요.
* 대상 페어: oUSDC-oWEMIX$ / oWEMIX-oWEMIX$

 

4. 예치하려는 정보가 맞는지 확인 후 [Continue] 버튼을 눌러주세요.

 

5. 예치하려는 페어 중 한 쪽 토큰에 예치할 수량을 입력하면 나머지 토큰의 예치 수량도 이미 예치한 토큰 수량의 비율에 따라 자동으로 입력됩니다. 이후 [Deposit] 버튼을 눌러주세요.

 

6. 선택한 페어 중 [Deposite Token A]를 선택해 주세요.

 

7. 연결한 톤 지원 지갑에 [Token A]에 대한 트랜잭션 확정 팝업(Confirm Transaction)이 표시되면 내용 확인 후 [SEND TON] 버튼을 눌러주세요.

 

8. [Password] 미니 팝업에 비밀번호 입력 후 [NEXT] 버튼을 눌러주세요.

 

9. 첫 번째 토큰 예치가 완료되면 [Done!] 메시지가 새로운 미니 팝업에 표시됩니다. 미니 팝업에서 [CLOSE] 버튼을 눌러주세요.

 

10. Tonken A와 동일하게 선택한 페어 중 [Deposite Token B] 버튼을 눌러주세요.

 

11. [Token B]에 대한 Confirmation 미니 팝업이 표시되면 내용 확인 후 [SEND TON] 버튼을 눌러주세요.

 

12. [Password] 미니 팝업에서 비밀번호 입력 후 [NEXT] 버튼을 눌러주세요.

 

13. 두 번째 토큰 예치가 완료되면 [Done!] 메시지가 미니 팝업에 표시됩니다. 미니 팝업에서 [CLOSE] 버튼을 눌러주세요.

 

14. [Deposit] 화면 상단의 [My deposit]에서 내가 예치한 페어의 현황을 확인할 수 있습니다.

 

https://medium.com/megatonfinance/%EB%A9%94%EA%B0%80%ED%86%A4-%ED%8C%8C%EC%9D%B4%EB%82%B8%EC%8A%A4%EC%97%90%EC%84%9C-%EC%9C%84%EB%AF%B9%EC%8A%A4-%ED%8E%98%EC%96%B4%EC%97%90-%EC%98%88%EC%B9%98%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95-240c92859f3e

 


 

안녕하세요 메가톤 파이낸스 커뮤니티 여러분 !

 

2023년 1월 30일, 메가톤 파이낸스가 톤(TON, Telegram Open Network) 블록체인에서 정식 출시했습니다.

 

메가톤 파이낸스는 AMM 기반 DEX로 톤 디파이 사용자들에게 다양한 금융 기회를 제공할 예정입니다.

 

자세한 사항은 아래 내용을 확인해주시기 바랍니다 .

 

■ 목차

1. TON (The Open Network)

2. 메가톤 파이낸스 소개

3. 오르빗 브릿지: 밸리데이터

4. CertiK 오딧

5. MEGA: 거버넌스 토큰

6. MEGA 토크노믹스

 

1. TON (The Open Network)

 

톤(TON, The Open Network)은 수십억 명의 사용자를 온보딩하기 위해 텔레그램이 설계한 탈중앙 레이어 1 블록체인입니다. 월 활성 사용자 수(MAU)가 7억명에 달하는 글로벌 메신저인 텔레그램에서 추진한 프로젝트로, 추후 오픈 소스로 전환되면서 개발자 커뮤니티에 의해 발전하고 있습니다. 최근 텔레그램 내 지갑 기능 업데이트로 톤 블록체인의 네이티브 토큰인 톤코인(Toncoin)의 활용도 또한 증가하는 추세입니다.

 

2022년 기준, 톤 블록체인은 진정한 확장성을 갖춘 몇 안 되는 블록체인 프로젝트 중 하나로 남아 있습니다. 여전히 수백만 건을 수행할 수 있는 가장 진보된 블록체인 프로젝트이며, 향후 필요시 초당 수천만 건의 진정한 튜링 완전 스마트 컨트랙트 트랜잭션을 수행할 수 있습니다.

 

톤은 출범 이후 5년간 놀라울 정도로 진화해왔고, 여전히 범용 블록체인 기술의 최첨단을 달리고 있습니다. 2017년부터 톤 백서에서 제안한 아키텍처 접근 방식의 효율성은 지난 몇 년 동안 개발된 톤 기술 구현을 기반으로 한 다양한 테스트넷 및 메인넷의 입증된 고성능으로 더욱 검증됐습니다. 톤 공식 홈페이지의 블록체인 분석에 따르면 설계 및 구현 측면에서 이더리움과 솔라나보다 우위에 있으며, 개발자와 커뮤니티의 높은 기대치를 충족할 수 있는 궁극적 해결책이 될 수 있다고 합니다.

 

톤의 특별함은 블록체인 그 자체에만 있지 않습니다. 무엇보다 톤은 7억명의 MAU를 자랑하는 텔레그램 메신저와 다양하게 결합할 수 있다는 잠재력이 있습니다. 이는 타 블록체인에서 찾아볼 수 없는 특별함으로, 이미 톤 생태계는 수백개에 달하는 챗봇 & 웹앱(지갑, 브릿지, 마이닝, 채널, 챗, 소셜 네트워킹, 겜블링 등) 기반을 갖추고 있습니다.

 

2. 메가톤 파이낸스

 

메가톤 파이낸스는 오지스가 개발한 탈중앙화 거래소 프로토콜로 참여자들에게 스왑, 이자 농사(Yield Farming) 등의 금융 기회를 제공합니다. 사용자는 메가톤 파이낸스에 유동성을 공급하고 거래 수수료 및 MEGA 토큰을 보상으로 얻을 수 있습니다. MEGA 토큰 마이닝은 2월 23일 오전 9시(KST)에 시작될 예정입니다.

 

출시 시점 기준, 메가톤 파이낸스는 유니스왑 V1과 같이 페어와 페어를 연결하는 라우팅 기능이 없습니다. 모든 페어는 WTON을 기반으로 생성되며 토큰을 스왑하려면 2번의 스왑 과정을 거칩니다. 가령 A 코인을 B 코인으로 스왑 시 WTON/A 페어에서 A 코인을 WTON으로 변환한 뒤 WTON을 다시 활용하면 WTON/B 페어에서 B 코인으로 스왑할 수 있습니다. 추후 톤 블록체인 업그레이드 시 유니스왑 V2와 같은 라우팅 기능 활용 및 즉각적인 스왑 기능을 구현하고자 합니다.

 

또한, 메가톤 파이낸스를 단일/플러스 예치, 레버리지 파밍 등 다양한 금융 상품을 탑재한 프로토콜로 발전시켜 나갈 것입니다. 사용자는 톤 생태계 내의 자산을 다양한 방법으로 활용해 수익 창출 기회를 얻을 수 있습니다.

 

궁극적으로 메가톤 파이낸스는 오지스가 개발할 예정인 텔레그램 챗봇 기능을 극대화해 사용자 경험을 크게 개선할 계획입니다. 이를 통해 기존 디파이 사용자뿐 아니라 7억명의 텔레그램 사용자를 모두 수용할 수 있는 사용자 친화적인 디파이 프로토콜이 되겠습니다.

 

3. 오르빗 브릿지

 

메가톤 파이낸스는 오지스가 개발한 글로벌 탑 7 브릿지인 오르빗 브릿지를 활용해 톤 생태계를 확장하고자 합니다. 오르빗 브릿지는 80만건 이상의 트랜잭션, 120억 달러를 상회하는 총거래량, 2억 달러 이상의 TVL을 기록하면서도 단 한 번의 해킹 사고가 나지 않은 견고한 크로스체인 브릿지입니다. 오르빗 브릿지는 현재 Ethereum, Klaytn, BNB, HECO, Stack, Ripple 등 19개의 다양한 네트워크와 ETH, USDT, USDC 등 86개 이상의 자산을 지원하고 있습니다.

 

오르빗 브릿지는 Trustless, Secure Multiple-Signature Verification으로 오지스, Ground X, DSRV 등 분권화된 주체가 온체인에서 합의를 달성하는 탈중앙 시스템과 스마트 컨트랙트 기반의 빠른 합의 프로세스를 구축했습니다. 메가톤 파이낸스는 안정적이면서도 확장성이 높은 오르빗 브릿지를 통해 Ethereum을 비롯한 다양한 네트워크에 있는 BTC, ETH, USDT, USDC, MATIC 등 주요 자산 활용 기회를 제공합니다.

 

메가톤 파이낸스는 오르빗 브릿지를 통해 다양한 메인넷의 자산을 톤 생태계 안으로 유입할 것입니다. 수많은 프로젝트는 톤 생태계를 통해 그들의 블록체인, 프로토콜, 토큰 등을 자연스럽게 홍보할 수 있으며, 더 많은 사용자를 지지자로 만들 수 있습니다. 오르빗 브릿지는 이들 모두를 잇는 연결 고리로서, 메가톤 파이낸스와 함께 성장할 것입니다.

 

4. CertiK 보안 감사

 

메가톤 파이낸스는 톤 생태계의 대표적인 탈중앙화 금융 프로토콜로 거듭나기 위해 프로토콜의 안전성을 우선순위에 놓았습니다. 다양한 자산이 예치될 메가톤 파이낸스 컨트랙트의 위험 요소를 최소화하고자, 세계적인 블록체인 보안 기업인 CertiK에서 보안 감사를 받았습니다. CertiK에서 진행한 보안 감사 결과 및 요약 내용은 아래를 확인바랍니다. 앞으로도 정기적인 보안 감사 진행으로 사용자가 안심하고 메가톤 파이낸스를 사용할 수 있도록 노력하겠습니다.

 

CertiK 보안 감사 리포트

 

 

5. MEGA

 

메가톤 파이낸스는 비신뢰 기반 탈중앙화 프로토콜로 특정 운영자가 아닌 거버넌스에 의해 프로토콜과 관련된 모든 사항을 결정합니다. 따라서 메가톤 파이낸스는 거버넌스를 통해 정책과 방향성이 결정될 수 있도록 거버넌스 토큰 ‘MEGA’를 발행했습니다.

 

MEGA는 유동성 마이닝, 스왑, 거래소(CEX, DEX) 등에서 획득할 수 있으며, 총 발행량은 100,000,000 MEGA입니다. 초기 공급량은 전체 발행량의 1%이며, MEGA의 구체적인 토크노믹스는 다음과 같습니다.

 

6. MEGA 토크노믹스

1) 총 발행량: 100,000,000 MEGA

2) 블록당 분배 수량: 0.217013889 MEGA

3) 일일 마이닝 수량: 18,750 MEGA

4) 반감기: 4년

5) 토큰 컨트랙트: EQB-cCOQDwerEnUD4–6xoYD0eL6_yC1zogAvA5GuXTF0iDIf

 

https://tonscan.org/jetton/EQB-cCOQDwerEnUD4-6xoYD0eL6_yC1zogAvA5GuXTF0iDIf

 

TON Explorer — The Open Network

 

tonscan.org

 

 

A. MEGA 초기 발행량

메가톤 파이낸스의 초기 생태계를 구축하기 위해 1,000,000 MEGA(전체 발행량의 1%)를 마케팅, MEGA LP 인센티브 및 Tonstarter에 활용합니다. 메가톤 파이낸스는 초기 공급량을 활용한 이벤트로 사용자와 유동성을 확보해 톤 네트워크상에서 안정적인 거래 환경을 조성할 것입니다.

 

B. MEGA 최종 토큰 분배량

MEGA의 최종 분배량은 100,000,000 MEGA이며 위의 표와 같이 분배됩니다.

 

메가톤 파이낸스에 많은 참여 부탁드립니다.

 

메가톤 파이낸스의 개발사 오지스는 클레이스왑, 메시스왑 등 디파이 프로토콜을 개발하고 운영하면서 세계적인 수준의 TVL과 MAU를 달성한 바 있습니다. 이러한 경험을 바탕으로 톤 생태계 위에 사용자 친화적인 DEX를 출시했습니다.

 

현재 메가톤 파이낸스는 소개 부분에서 언급했듯이 라우팅 기능이 없습니다. 유니스왑 V1처럼 WTON을 기반으로 생성된 각 페어를 2번 스왑해야 원하는 토큰을 획득할 수 있습니다. 오지스는 이로 인해 발생할 사용자들의 불편을 잘 인지하고 있습니다. 톤 블록체인이 업그레이드되면 유니스왑 V2와 같이 즉각적으로 스왑이 가능한 기능을 신숙하게 구현하도록 하겠습니다.

 

추후 메가톤 파이낸스에 레버리지 파밍, 거버넌스, 롱/숏 포지션 예치 등 다양한 금융 서비스가 추가되면 일반적인 거래소 이상의 금융 경험을 제공할 것입니다. 따라서 메가톤 파이낸스 생태계에는 MEGA 장기 투자자, MEGA 스테이킹을 통해 거버넌스에 참여하려는 사용자, 다양한 디파이 서비스를 단기적으로 이용하는 사용자 등 다양한 유형의 사용자가 참여할 수 있습니다. 더 나아가, 메가톤 파이낸스와 텔레그램 간 완벽한 결합으로 톤 생태계 참여자뿐만 아니라, 텔레그램 사용자들도 쉽게 사용할 수 있는 프로토콜로 자리매김하겠습니다.

 

그동안 톤 블록체인 기반의 디파이를 경험하고 싶었지만 생소한 UI/UX와 메이저 자산의 부재 등으로 어려움을 겪었던 모든 분에게 메가톤 파이낸스는 새로운 기회가 될 것으로 기대합니다. 톤 생태계에 활력을 불어넣을 메가톤 파이낸스에 많은 참여 부탁드립니다!

 

 

메가톤 파이낸스

공식 홈페이지: https://megaton.fi

디스코드: https://discord.gg/megatonfinance

레딧: https://www.reddit.com/r/MegatonFinance

텔레그램 (공지): https://t.me/MegatonFinanceChannel

텔레그램 (글로벌): https://t.me/MegatonFinanceOfficial

텔레그램 (국내): https://t.me/MegatonFinanceOfficialKorea

트위터: https://twitter.com/Megaton_Fi

 

팀 & 제품

오지스: https://ozys.io

오르빗 체인: https://orbitchain.io

오르빗 브릿지: https://bridge.orbitchain.io

벨트 파이낸스: https://belt.fi

클레이스테이션: https://klaystation.io

클레이스왑: https://klayswap.com

메시스왑: https://meshswap.fi

WTON 게이트웨이: https://wton.dev

 

https://medium.com/megatonfinance/%EB%A9%94%EA%B0%80%ED%86%A4-%ED%8C%8C%EC%9D%B4%EB%82%B8%EC%8A%A4-%EC%A0%95%EC%8B%9D-%EC%B6%9C%EC%8B%9C-dda90558c723

 

메가톤 파이낸스 정식 출시

안녕하세요 메가톤 파이낸스 커뮤니티 여러분 !

medium.com

 

 

Megaton
https://tonscan.org/jetton/EQB-cCOQDwerEnUD4-6xoYD0eL6_yC1zogAvA5GuXTF0iDIf

오지스 메가톤(JETTONS) 관련 링크
https://tonscan.org/address/EQD1FNDHG_Z4teeam39gPUQORB574UYKMfmEs1nYrML5GNQQ#tokens

WTON
https://tonscan.org/jetton/EQCajaUU1XXSAjTD-xOV7pE49fGtg4q8kF3ELCOJtGvQFQ2C

Orbit Bridge Ton Meshswap Protocol
EQCeGZcyr9Mkxf7OFLqyn40LLw292aCN_bxnT856rOkYW-I5

Orbit Bridge Ton Ethereum
EQAW42HutyDem98Be1f27PoXobghh81umTQ-cGgaKVmRLS7-

Orbit Bridge Ton USD Tether
EQC_1YoM8RBixN95lz7odcF3Vrkc_N8Ne7gQi7Abtlet_Efi

Orbit Bridge Ton USD Coin
EQC61IQRl0_la95t27xhIpjxZt32vl1QQVF2UgTNuvD18W-4

Orbit Bridge Ton Matic Token
EQBq4d4GPyBoh-Pjnf3wxUyQSS28WY2Yt-7cPAG8FHpWpNRX

D-3! 론칭 기대하고 계시나요?

드디어 2023년 1월 30일 메가톤 파이낸스가 론칭 될 예정입니다.

MEGATON FINANCE 커밍 순!

 

https://twitter.com/Megaton_Fi/status/1618883615630434307

메가톤 파이낸스 커뮤니티 여러분 안녕하세요.

톤(Toncoin)의 상호운용성 문제에 대한 솔루션인 WTON 게이트웨이 출시 소식을 안내해드립니다.

자세한 사항은 아래 내용을 확인해주시기 바랍니다.

1. WTON 게이트웨이 소개

TON ↔ WTON 게이트웨이는 톤(Toncoin)을 젯톤(Jetton) 표준인 랩트톤(WTON)으로 변환해주는 서비스를 제공합니다. 랩트톤은 톤(TON: The Open Network) 블록체인 출시 이후 개발된 젯톤 토큰 표준으로, 톤 블록체인에서 토큰이 전송되는 방식 및 토큰 간의 일관된 전송 기록을 유지하는 방법을 정의합니다. 랩트톤은 톤 네트워크 내의 톤과 1:1로 지원되는 최초의 젯톤 표준 토큰입니다.

기존 톤 보유자는 가상자산 거래소에서만 활용 및 거래가 가능했습니다. WTON 게이트웨이에서 톤을 랩트톤으로 변환함으로써 메가톤 파이낸스를 비롯한 톤 생태계의 디파이 프로토콜에서도 톤을 사용할 수 있습니다. 또한, 언랩(unwrap) 기능을 사용하여 랩트톤에서 다시 톤으로 변환할 수 있습니다.

2. WTON 게이트웨이 출시 배경

톤은 글로벌 메신저 플랫폼인 텔레그램이 설계한 레이어 1 블록체인인 톤의 네이티브 토큰입니다. 하지만 톤 블록체인의 기축통화인 톤은 다른 EVM 기반 코인 및 알트코인과 호환하지 않습니다. 각각의 블록체인은 별개의 시스템이므로, 기본적으로 특정 블록체인에 존재하는 코인은 다른 블록체인에서 활용할 수 없습니다. 하지만, 우리 팀은 고립된 톤 블록체인을 활성화하고, 톤 블록체인의 기술력과 문화적 다양성을 기반으로 하는 톤 생태계를 구축하기 위해서는 가장 먼저 톤의 활용성을 제고하는 것이 필요하다고 판단했습니다. 이에 끊임없이 고민한 결과, 톤의 상호운용성 문제를 래핑(wrapping)이라는 방법으로 해결할 수 있다는 결론을 도출했습니다.

래핑은 ‘랩트톤’이라는 톤과 동등한 토큰을 패키징이 아닌, 스마트 컨트랙트를 통해 거래하는 것을 의미합니다. 쉽게 말해, 래핑이란 블록체인 간 비(非)상호운용성이라는 제한을 우회하여 다른 블록체인에서 토큰을 사용하는 방법입니다. 앞서 언급한 대로, 톤 블록체인에 존재하는 톤은 다른 블록체인에서 활용할 수 없습니다. 하지만 WTON 게이트웨이에서 톤을 래핑함으로써 메가톤 파이낸스를 비롯한 톤 메인넷의 디앱에서 톤을 활용하고, 다른 EVM 기반 토큰과 교환 및 거래할 수 있습니다.

3. WTON 게이트웨이 기대 효과

톤을 스마트 컨트랙트를 기반으로 한 다양한 기능에서 활용하려면 젯톤 표준 토큰인 랩트톤으로 변환해야 합니다. WTON 게이트웨이에서 랩트톤으로 변환함으로써 톤 블록체인에 구축된 기본 통화인 톤의 사용 범위를 확장할 수 있습니다.

즉, 랩트톤은 블록체인의 상호운용성 문제에 대한 솔루션입니다. 랩트톤은 젯톤 표준의 유연성을 갖춘 토큰으로, 탈중앙화된 플랫폼들에서 ETH를 자유롭게 다른 토큰들과 호환할 수 있도록 ERC-20 토큰화한 랩트이더(wETH)와 같은 역할을 할 것입니다. 톤과 랩트톤은 언제든지 1:1로 교환이 가능하고, 랩트톤은 다양한 디앱에서 ETH, USDT, USDC, MATIC 등 다양한 ERC-20 토큰으로 교환 및 스왑이 가능합니다.

사용자는 랩트톤을 톤 블록체인 기반의 DEX인 메가톤 파이낸스를 비롯한 여타 톤 생태계 내의 디파이 프로토콜에서 활용할 수 있습니다. 또한, 이더리움, 폴리곤, 클레이튼 등 다른 블록체인 내의 다양한 디파이 프로토콜에서 주요 암호화 자산으로 발돋움할 뿐만 아니라, 멀티체인 유니버스를 오가는 사용자를 연결하는 매개가 될 것으로 기대합니다.

 

[WTON 게이트웨이 사용자 가이드 및 참고사항]

  • WTON 게이트웨이 사용자 가이드
  • WTON 게이트웨이를 통해 톤 래핑(wrapping) 시 랩트톤으로 전환되고, 언랩(unwrap) 기능 활용 시, 다시 TON으로 변환 가능
  • TON 블록체인 지원 지갑: TON Wallet, Tonhub (추후 Tonkeeper, Tonic, OpenMask, Coin98 Wallet 지원 예정)
 

오지스는 수년간 다양한 블록체인 프로젝트와 긴밀히 협력해 유기적 블록체인 기술을 축적했고, 인프라도 구축했습니다. 지금까지 쌓은 경험과 노하우를 바탕으로 메가톤 파이낸스와 WTON 게이트웨이를 출시했습니다. WTON 게이트웨이는 기존 톤 블록체인에서 활용성이 부족했던 톤을 사용할 수 있게 함으로써 사용자, 재단, 다양한 디파이 프로토콜과 메가톤 파이낸스 간 연결고리 역할을 수행할 것입니다. 톤 블록체인 연결로 7억명의 텔레그램 유저를 품고, 나아가 국경의 경계 없이(Borderless) 전 세계 사용자를 포용하는 디파이 프로토콜로 성장할 메가톤 파이낸스의 미래를 기대 바랍니다. 여러분의 변함없는 관심과 지속적인 성원을 부탁드립니다.

 

메가톤 파이낸스

 

팀 & 제품

 

https://medium.com/megatonfinance/wton-%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4-%EC%B6%9C%EC%8B%9C-22a3f3d69666

 

WTON 게이트웨이 출시

메가톤 파이낸스 커뮤니티 여러분 안녕하세요.

medium.com

 

텔레그램 톤 네트워크 검증자, 온체인 거래 없는 비활성 주소 동결 투표 - 토큰포스트

사진 = shutterstock

텔레그램의 톤(TON, 디오픈네트워크) 네트워크 검증자들이 거버넌스 투표를 진행할 것으로 전망된다.

24일(현지시간) 텔레그램의 톤 네트워크 검증자들이 초기 유통 기여자들 중 온체인 거래를 한 적이 없는 195개 장기 비활성 주소를 향후 4년간 동결하는 방안에 대한 거버넌스 투표를 진행한다.

해당 주소들은 현재 약 25억 달러(한화 약 3조875억원) 상당의 10억8000만개 TON을 보유하고 있다. 이는 TON 유통량의 21.3% 규모다.

해당 제안이 통과되려면 검증자 중 최소 75%가 여러 차례로 나눠 진행되는 투표에 참여해야 한다. 또 제안 통과 시 동결 대상 주소들은 4년간 아무런 거래도 할 수 없으며, 퍼블릭 체인 상에서 동결 주소 목록을 상시 확인 가능하다.

이와 관련 톤코인 재단은 "해당 제안은 TON 커뮤니티의 투명성을 증명하기 위함"이라며 "해당 지갑들의 동결을 통해 TON 유통량을 보다 투명하게 공개할 수 있다"고 설명했다.

한편, 지난 5일 톤 재단이 데이터 스토리지 시장에 진출한 것으로 나타났다.

톤 재단은 자체 개발 데이터 스토리지 솔루션 '톤 스토리지'(TON Storage)을 출시해 TON 코인을 인센티브로 제공하는 데이터 스토리지 프로젝트를 추진한다.

사용자의 데이터를 분산해 보관하는 노드 운영자들은 스마트 컨트랙트를 통해 TON 코인을 보상으로 지급받을 수 있으며, 이를 통해 사용자는 사실상 영구적으로 데이터를 저장할 수 있다는 게 톤 재단 측의 설명이다.

gerrard@tokenpost.kr

https://www.tokenpost.kr/article-120358

 

텔레그램 톤 네트워크 검증자, 온체인 거래 없는 비활성 주소 동결 투표 - 토큰포스트

텔레그램의 톤(TON, 디오픈네트워크) 네트워크 검증자들이 거버넌스 투표를 진행할 것으로 전망된다.24일(현지시간) 텔레그램의 톤 네트워크 검증자들이 초기 유통 기여자들 중 온체인 거래를 한

www.tokenpost.kr

 

The Open NetworkJanuary 27, 2022

다음은 Bit.com Exchange가 2022년 1월 23일 앤드류 로고조프와 나눈 텔레그램 대화와 AMA에서 가졌던 질의응답을 정리한 내용입니다. 모든 질문과 답변은 그룹의 원본 메시지에 연결되었습니다.

소개

Q:

Bit.com x 톤코인AMA가 5분 후에 시작됩니다

여러분, 안녕하세요. 오늘 톤코인과 함께하는 AMA 이벤트에 참여해 주셔서 감사합니다.

TON 재단의 창립 멤버이자 VK.com의 전 CEO인 앤드류 로고조프가 여러분의 질문에 답변해 드릴 것입니다. 앤드류 씨를 따뜻하게 맞아 주시기 바랍니다!

A:

안녕하세요 여러분! 오늘 이 자리에 함께 하게 되어 기쁩니다.

Q:

저는 오늘 이 시간 사회를 맡게 될 Bit.com의 제프리입니다. 이제 AMA를 시작하겠습니다.

바쁘신 가운데 함께 해주셔서 감사합니다. The Open Network가 무엇인지 설명해 주실 수 있을까요?

A:

물론이죠. The Open Network를 의미하는 TON은 완전히 작동하는 레이어 1 지분증명 블록체인으로, 무한한 수평적 확장성을 통해 초당 수백만 건의 트랜잭션을 처리하고 수십억 명의 사용자들과 스마트 컨트랙트 그리고 탈중앙화 애플리케이션을 수용하고자 자연스럽게 성장하도록 설계되었습니다.

이것은 니콜라이 두로프 박사(텔레그램의 CTO)가 만든 설계를 바탕으로 텔레그램 팀이 구축했고 2020년 후반에 커뮤니티에 인계되었습니다. 전 세계의 헌신적인 개발자들로 구성된 그룹이 비영리단체인 TON 재단을 세워 지금은 텔레그램의 개입 없이 네트워크 인프라의 발전을 위해 노력하고 있습니다.

Q:

대단하군요! 그래서 지금 얼마나 많은 이들이 TON을 사용하고 있는지 대략적인 수치를 알려주실 수 있나요?

A:

오늘날 블록체인에는 160,000개 이상의 활성 계정이 있습니다. 소셜 미디어의 활성 커뮤니티에는 총 1백만 명이 넘는 회원들이 활동하고 있습니다.

미리 수집된 질문

160,000이라는 숫자는 결코 적은 수가 아닙니다. 그리고 우리 모두 파벨이 몇 주 전에 TON을 지지한다는 소식을 접해 알고 있습니다. 우리는 TON의 밝은 미래를 볼 수 있습니다.

TON에 대해 소개해 주셔서 감사합니다. 사용자에게 받은 미리 수집된 질문부터 여쭤보겠습니다.

Q:

투자자의 약 3/4가 프로젝트의 진정한 가치와 건전성을 이해하지 않고 단기적 관점을 내세워 토큰의 가격에만 집중하고 있습니다. 투자자들이 귀하의 토큰을 장기적으로 보유하게 된 동기와 이점에 대해 말씀해 주시겠습니까?

A:

우리는 톤코인이 대규모 사용자 기반을 갖춘 텔레그램과 같은 사용자에게 익숙한 인터페이스를 통해 대중 시장 서비스에 접근하는 최초의 암호화폐가 될 것이라고 믿습니다.

TON 네트워크는 TON 저장소, TON 사이트, TON DNS 등의 모듈을 포함해 최상의 Web 3.0 개발을 지향하고 있습니다. 올해 2022년 이 기간 동안 TON 네트워크는 톤코인이 주요 결제 수단 및 가치 저장 수단으로 기본 통합되는 다양한 제품 및 서비스를 특징으로 한 글로벌 Web 3.0 네트워크의 형태를 취할 것입니다.

텔레그램 메신저와 같이 대중을 대상으로 하는 제품을 만들고 이러한 제품으로 통합하려는 계획을 비롯해 톤코인의 뛰어난 사용 사례로 구성된 세트를 마련할 것입니다.

따라서, 톤코인은 토큰 보유자들이 이러한 탈중앙화 서비스와 유망한 Web 3.0 개념의 진화에 참여할 수 있게 할 것입니다.

Q:

톤코인의 가장 고유한 기능은 무엇이고, 토큰 보유자는 장기적으로 어떤 이득을 얻을 수 있을까요?

A:

TON 네트워크의 네이티브 코인인 톤코인은 TON 커뮤니티에서 출시했거나 개발 중인 대중 고객 지향 제품의 필수 부분입니다. TON 네트워크의 Web 3.0 서비스에 대한 결제 수단으로서의 효용 가치는 시장의 다른 코인과 비교했을 때 고유한 포지셔닝을 만듭니다.

Q:

강력한 커뮤니티는 프로젝트에 흥미로운 아이디어를 가져올 뿐만 아니라 더 큰 파트너를 끌어들입니다. 그렇다면 TON은 커뮤니티를 어떻게 구축하려고 하는 걸까요? 그리고 블록체인 경력이 있는 전문가들을 팀에 영입할 계획이 있나요?

A:

TON 커뮤니티는 매우 빠르게 성장하고 있습니다. 다른 많은 프로젝트들과 달리 TON은 사람들을 모집하거나 고용하지 않고 TON의 비전에 대한 열정과 믿음을 통해 자발적으로 참여하도록 동기를 부여하는 진정한 탈중앙화 커뮤니티를 가지고 있습니다. 이는 주변에 활발한 개발자 커뮤니티가 있는 텔레그램의 특성 때문이기도 합니다.

50명 이상의 재능 넘치는 개발자들이 현재 클래식 백엔드 및 프론트엔드 개발자, 암호화폐 개발자, 고부하 솔루션 개발자 및 암호화폐 자문을 포함한 다양한 팀 내에서 TON 작업을 진행하고 있습니다. 그 밖에도, 커뮤니티에는 마케팅 전문가, PR 팀 및 비즈니스 개발 전문가도 포함됩니다. 그리고, 커뮤니티는 다양한 역할을 채워줄 TON 가족에 합류할 수 있는 새로운 프로젝트, 기업가 및 블록체인 전문가들의 합류를 환영하고 이런 분들을 지속적으로 찾고 있습니다.

우리는 기업가와 개발자들이 TON을 기반으로 최고 품질의 블록체인 프로젝트를 만들 수 있는 여러 대규모 커뮤니티 인큐베이터를 런칭하는 과정에 있습니다. 인큐베이터는 생태계가 번성할 수 있도록 기술적 조언, 재정 및 사회적 자본을 제공할 것입니다.

Q:

많은 신생 기업들이 멋진 첫 인상을 가지고 탄생했지만 한 순간에 쇠퇴의 길을 걸었습니다. 시장에서 발판을 마련하고 블록체인 세계에서 가장 위대한 토큰으로 자리매김하기 위해 The Open Network를 어떻게 이끌어 가실 것인지 설명해 주실 수 있을까요?

A:

TON 커뮤니티와 개발 핵심 팀은 지난 몇 년간 극심한 불확실성 속에서도 지속 가능한 존재로 입증되었습니다. 텔레그램의 TON 프로젝트 참여가 중단된 날부터 지금까지 개발 커뮤니티는 TON(https://ton.org/whitepaper.pdf)의 원래 아이디어에서 구상했던 글로벌 Web 3.0 네트워크를 실행하겠다는 약속을 이행하겠다는 약속을 입증했습니다. 이 커뮤니티는 상당히 분산되었고, 더 이상 어느 한 그룹이나 특정 개인이 네트워크의 중요한 병목이 되거나 또는 실패 지점이 아닙니다. 이 모든 것이 제게 장기적으로 TON 프로젝트의 지속 가능한 개발에 대한 확신을 줍니다.

우리는 장기적인 비전을 가지고 있으며 이것은 ton.org에서도 찾을 수 있는 최신 로드맵입니다.

백서

Q:

TON은 더 큰 암호화폐 시장에 어떻게 진출할 계획인가요?

A:

TON 커뮤니티는 사용하기 쉬운 제품 형태로 대중 시장 솔루션을 제공하는 데 중점을 두고 있습니다. 우리는 블록체인을 사람들의 기본적인 요구를 충족시키는 데 사용되는 기술로 봅니다. 우리의 목표를 달성함에 따라 우리는 암호화폐 시장에서 시장 점유율을 확보할 수 있을 뿐 아니라, 가치 송금, 데이터 저장, 데이터 액세스, 지적 권리 보존 및 블록체인 기술과 Web 3.0이 가져온 혁신도 이룰 수 있게 될 것입니다.

추가 질문 5개

감사합니다! 사용자들이 TON에 대해 더 많은 질문이 있을 것 같아서 이제 질문을 5개만 더 드리겠습니다.

Q:

사용자들은 어떻게 이 프로젝트에 대한 최신 정보를 받을 수 있나요? 사용자들이 최신 업데이트를 받을 수 있는 로컬 커뮤니티를 포함한 채널이 있나요?

A:

TON 관련 업데이트를 확인하는 가장 좋은 방법은 다양한 언어로 제공되는 공식 텔레그램 채널을 구독하는 것입니다.

• 영어: t.me/toncoint.me/toncoin_chat

• 러시아어: t.me/toncoin_rust.me/toncoin_rus_chat

• 우즈베키스탄어: t.me/toncoin_uzt.me/toncoin_uz_chat

• 스페인어 t.me/toncoin_est.me/toncoin_es_chat

• 인도네시아어: t.me/toncoin_idt.me/toncoin_id_chat

• 아랍어: t.me/toncoin_art.me/toncoin_ar_chat

• 한국어: t.me/toncoin_krt.me/toncoin_kr_chat

• 터키어: t.me/toncoin_turt.me/toncoin_tur_chat

• 중국어(간체): t.me/toncoin_cnt.me/toncoin_cn_chat

• 중국어(번체): t.me/toncoin_tct.me/toncoin_tc_chat

• 이탈리아어: t.me/toncoin_itt.me/toncoin_it_chat

Q:

스마트 컨트랙트가 되려면 즉각적이고 수수료 없는 비공개 트랜잭션이 되어야 합니다. 톤코인이 이 3가지 문제를 해결할 수 있을까요?

A:

예, 그렇습니다.

1. 즉각성을 말하자면, TON은 대기시간이 짧은 트랜잭션용으로 설계되었습니다. 이 블록체인은 초당 수백만 건의 트랜잭션을 수용할 수 있고 평균 블록 처리 시간은 3~7초에 불과합니다.

2. 네트워크 지속 가능성을 위해 수수료가 부과되지는 않지만 TON의 수수료는 트랜잭션당 미화달러 센트의 극히 일부로 상당히 낮아 세계에서 가장 비용 효율적인 블록체인 중 하나가 됩니다.

3. 비공개 트랜잭션은 핵심 기술의 장점 중 하나인 특정 TON 워크체인에 의해 지원될 수 있습니다.

Q:

파트너십은 채택에 필수인데, 현재와 미래에 어떤 파트너와 제휴할지 알려주실 수 있을까요?

관리자 추가 내용:

이 질문에 대해 조금 정정하겠습니다. 우리는 TON이 텔레그램과 긴밀한 관계를 맺고 있는지, 텔레그램과의 통합이 있는지, 톤코인을 필요로 하는 프리미엄 기능이 추가될지 여부를 알고 있습니다. 이 코인(결제에 사용됨)은 향후에 소각될 예정인가요?

A:

지금까지 텔레그램과 두 가지 통합이 이루어졌습니다. 첫째는 u/wallet 봇으로, 사용자가 TON 지갑을 텔레그램 계정과 연결할 수 있게 해줍니다. 암호화폐의 구매 및 교환을 지원할 뿐 아니라 다른 텔레그램 사용자와 주고 받을 수도 있습니다. 이 봇은 텔레그램 내부에 존재하기 때문에 사용자가 월렛을 사용하기 위해 메신저 앱을 나가지 않아도 됩니다.

또 다른 통합을 통해 콘텐츠 제작자는 텔레그램에서 톤코인으로 결제액을 받을 수 있습니다. 이것은 사용자가 구독 기반으로 개인 채널에 접근할 수 있는 페이월 기능입니다. 패트리온(Patreon)과 거의 같거나 최근 인스타그램에서 유료 구독을 런칭했습니다. 이 서비스는 TON, 톤키퍼 월렛 그리고 @donate 봇 팀 간의 협력으로 만들어졌습니다. 현재 비공개 베타 버전이지만 스크린샷에서 작동 방식을 확인할 수 있습니다. 가까운 장래에 이 서비스는 비공개 채널뿐 아니라 비공개 그룹 채팅용으로 텔레그램의 모든 사용자에게 공개될 예정입니다.

1분기에 런칭할 더 많은 통합들이 있지만 아직 구체적으로 공개하지는 않을 것입니다. 제가 밝힐 수 있는 것은 가능한 한 많은 사용 사례를 6억 이상의 텔레그램 대중 전체에 전달하는 것이 목표라는 것입니다.

텔레그램에 통합된 제품에서 발생할 수 있는 모든 지불은 제작자 또는 서비스 제공자에 대한 지불입니다. 따라서 이들에게 지불되고 불태워지지 않을 것입니다. 이러한 제품 내에서 텔레그램은 텔레그램의 개입 없이 이루어지기 때문에 지불 수수료를 징수하지 않습니다.

텔레그램은 블록체인이 가질 수 있는 가장 전략적인 파트너 중 하나이지만 TON은 텔레그램을 넘어서는 것을 목표로 합니다. TON은 이미 OKEx, FTX, 톤키퍼, @wallet, @donate, Mercuryo 및 NeoCrypto를 포함한 최상위 거래소, 월렛, 페이먼트 게이트웨이들과 파트너십을 맺고 있습니다.

Q:

귀사 웹사이트에서 스마트 컨트랙트에 대한 내부 또는 외부 감사를 실시했던 적이 있다고 언급하지 않으셨는데, 이전에 감사를 하셨던 적이 있다면 상세히 알려 주실 수 있을까요? 감사를 하셨던 적이 없다면, 가까운 장래에 스마트 컨트랙트를 어느 하나라도 검토할 계획이 있으신지요?

A:

TON은 견고함을 염두에 두고 설계되었습니다. TON의 보안 모델은 보수적 가정과 동료들이 검토한 프로토콜을 기반으로 합니다. 그리고 우리는 Trail of Bits를 포함한 핵심 블록체인 구성요소 및 스마트 컨트랙트에 대한 감사를 통과하기 위해 여러 최고 보안 기관과 협력합니다. 시간 관계로, 해당 결과가 나오는 대로 커뮤니티 최신 소식을 t.me/toncoin에 계속 게시하도록 하겠습니다.

Q:

톤코인은 채택을 현실, 사회적 및 실제 사용 사례로 만들기 위해 무엇을 했나요?,

A:

현재 작업 중인 모든 사용 사례를 대중화하기 위해 다양한 인센티브와 함께 전통적인 접근법을 활용해 서비스를 시도해 볼 것입니다. Telegram Ads 플랫폼의 폭 넓은 지지와 함께, 우리는 아직 암호화폐에 익숙하지 않은 분들을 포함해 더 폭 넓은 대중에게 다가가고 있습니다. 앞서 설명한 사용 사례도 채택률을 높이는 데 도움이 됩니다. 임계치에 오면 이 역학(송금, 기부, 구독 등)에 대한 바이럴 효과가 자체적으로 확산되어 최초의 대중시장 암호화폐 서비스로 자리매김할 것입니다.

Q:

현재 NFT는 화두이지만 기술만을 위한 NFT는 아닙니다. 귀사 프로젝트는 시간이 지남에 따라 더 많은 실제 사용 사례가 NFT에 대해 나타날 것이라고 생각하시나요? NFT를 왜 진지하게 받아들여야 할까요?

관리자 추가 내용:

NFT는 암호화폐 공간에서 화두 중 하나로 손꼽히니, 앤드류에게 물어볼 질문을 하나 더 선택하겠습니다. 앤드류가 기꺼이 대답해 줄 것 같은데요. 그렇죠?

A:

이 질문을 해주셔서 감사드립니다. 제가 가장 좋아하는 질문이거든요 

우선 NFT는 게임에서 두드러집니다. 유용한 아티팩트를 NFT로 발행하고 게임 내 경제성을 향상시킬 수 있습니다. 그리고 TON은 고성능 탈중앙화 경제 레일을 사용해 게임이 마침내 상호운용될 수 있기 때문에 게임 업계에서 정말 멋진 플랫폼입니다.

원래 NFT는 도메인 이름이지만, DNS는 항상 중앙집중식이고, 보안 문제로 가득 차 있었고, 블록체인 대안은 확장할 수 없었습니다. TON은 고유한 이름의 소유권이 잘 맞는 저장소 및 분배 시설도 제공하기 때문에 이런 부분에서 상황을 바꿀 수 있습니다. TON NFT는 차세대 SocialFi의 기반이 될 것입니다.

오늘날 TON 생태계에는 여러 NFT 프로젝트와 계약 표준이 존재합니다. 강력한 TON NFT와 대체 가능한 토큰은 핵심 요소를 기반으로 하는 다양한 제품과 서비스의 문을 여는 2022년 1분기 말 이전에 런칭될 예정입니다. 이들 중 일부는 관련 대중에게 서비스를 제공하기 위해 소셜 네트워크에 통합될 것입니다.

TON의 첫 번째 NFT는 TON 다이아몬드(http://ton.diamonds)가 될 것입니다. 이 이면의 아이디어는 멋진 사진을 가질 뿐만 아니라 소유자가 돋보이게 하고 예정된 기능 및 이벤트에 대한 조기 독점 이용 자격을 얻을 수 있도록 TON 월렛, 익스플로러, NFT 마켓플레이스 및 TON 생태계의 다른 부분에도 사진을 통합하는 것입니다. TON 다이아몬드는 커뮤니티가 스스로를 표현할 수 있게 합니다.

Q:

좋습니다. 우리 모두 다 더 많은 NFT 프로젝트들이 TON에 모이기를 기대하고 있습니다.

오늘 시간 내주신 앤드류와 함께 해주신 모든 분들께 다시 한 번 감사드립니다.

A:

질문해 주셔서 감사드립니다. 즐거운 시간 되시기 바랍니다!

결론

Bit.com 및 TON도 팔로우해주시기 바랍니다.

질문에 채택 되신 분들께는 근무일 기준 7일 이내에 보상을 지급해 드립니다. 앞으로 더 많은 톤코인 에어드랍 이벤트가 있을 예정입니다.

다음 주에 또 다른 인기 토큰과 함께 진행되는 AMA의 다음 라운드를 기대해 주십시오!

 

출처 : https://telegra.ph/Bitcom-AMA%EC%97%90%EC%84%9C-%EB%A7%8C%EB%82%9C-%EC%95%A4%EB%93%9C%EB%A5%98-%EB%A1%9C%EA%B3%A0%EC%A1%B0%ED%94%84%EC%99%80%EC%9D%98-%EC%A7%88%EC%9D%98%EC%9D%91%EB%8B%B5-%EC%A0%95%EB%A6%AC-01-26

 

Bit.com AMA에서 만난 앤드류 로고조프와의 질의응답 정리

다음은 Bit.com Exchange가 2022년 1월 23일 앤드류 로고조프와 나눈 텔레그램 대화와 AMA에서 가졌던 질의응답을 정리한 내용입니다. 모든 질문과 답변은 그룹의 원본 메시지에 연결되었습니다. 소개

telegra.ph

 

 

 

The Open Network(TON)은 매우 높은 확장성을 목표로하는 Layer1 프로토콜로, 지분 증명 방식과 무제한 샤딩(Infinite Sharding Paradigm)을 통하여 현존 최고 수준의 TPS를 구현했다. 최근 페이스북 개발자 출신이 만든 Aptos와 SUI가 차세대 이더륨 킬러로서 큰 관심을 받고 있는 가운데, TON은 기술력 뿐만 아니라 Telegram 메신저와의 연계로 블록체인의 mass adoption을 이끌어 낼 유력 주자로 부상하고 있다.

TON은 열악한 시장 여건에도 불구하고 Telegram 내 wallet 기능 등을 추가하면서 저변을 꾸준히 확대했고, 이를 기반한 가격 상승으로 최근 Coinmarketcap 기준 30위권에 진입했다. 특히, DEX 및 NFT marketplace와 같은dApp을 메타마스크가 아닌 Telegram 메신저 브라우저를 통해 이용할 수 있는 WebApp 방식을 활용함으로써 일반 이용자들의 접근성을 크게 높였다.

 

 

TON은 현재 FTX, Huobi, OKX 등에서 거래할 수 있고, 거래소에 따라 $TON 또는 $Toncoin이라는 티커를 사용하고 있다. 현재 업비트에 상장되어 있는 TON은 토카막(Tokamak Network)으로 The Open Network와는 무관한 프로젝트이기에 유의할 필요가 있다.

참고로, TON은 Telegram이 만든 Gram의 레거시를 잇는 프로젝트로 오픈소스로 공개된 코드를 활용, 기존 대비 보다 개선된 기술력으로 크립토 시장에 도전장을 내밀었다. Telegram과의 히스토리는 다음 포스팅에서 자세히 다루도록 하고, 이번엔 TON의 압도적 확장성을 가능케한 동작 메커니즘에 대해서 살펴보려고 한다.

|TON 블록체인 기술력 심층 분석

TON은 결제 시스템뿐만 아니라 다양한 탈중앙 서비스를 제공하기 위한 완전한 인프라를 구축하는 것을 목표로 한다. 이를 가능케할 높은 확장성을 담보하기 위해 TON은 다음과 같은 기술을 활용하고 있다.

 

|높은 확장성을 위한 지분증명(PoS) 및 샤딩(sharding)

TON은 세가지 계층 네트워크로 구성되어 있다. 첫 번째 계층에는 빠른 속도와 보안을 제공하는 지분 증명(PoS) 알고리즘을 기반으로 하는 마스터체인(masterchain)이 있다. 이 마스터 체인은 현재 운영 중인 TON 네트워크의 메인 체인이며 TON에서 수행되는 모든 연산이 마스터체인에서 이뤄진다.

두 번째 계층에서는 작업체인(workchain)이 존재하는데, 일종의 보조체인으로 마스터체인 뿐만 아니라 동시에 다른 작업체인 모두와 연결되어 데이터를 공유한다. 즉, N개의 작업체인 있다면 N^N개의 상호 연결이 존재하여 작업을 공유하는 것이다. 이러한 2차 체인 각각은 서로 다른 형식의 계정 주소, 스마트 계약 및 가상머신을 통해 고유한 합의 규칙(consensus rules) 세트를 갖출 수 있다. 이 모든 과정에서 마스터체인과의 호환성을 유지하는 동시에 각 작업체인 간의 원활한 상호 작용이 가능하다.

마지막으로 세 번째 계층에는 샤드체인(shardchain)이 있는데, 샤드체인은 작업 체인의 일부이며 그 역할은 작업을 분할하고 병렬화하여 확장성을 개선시키는 것이다. 이러한 방식으로 TON의 확장성은 현재 Polkadot(~1500 tps) 또는 Solana(~65,000 tps)보다 훨씬 높은 초당 수백만 건의 거래를 처리할 수 있는 수준으로 개선된다. 이는 샤드체인을 활용한 bottom-up 접근법 덕분에 가능한 것으로 TON에서는 이 방식을 무한 샤딩 패러다임(Infinite Sharding Paradigm)이라고 부른다.

 

 

이러한 기술을 바탕으로 TON이 Ethereum, Polkadot 또는 Cosmos와 같은 메인넷과 직접적으로 경쟁할 수 있는 기반을 마련했다고 할 수 있다. TON의 전체 메커니즘은 P2P 프로토콜을 통해 완전히 탈중앙화된 방식으로 작동하기 때문에 검열저항성 뿐만 아니라 네트워크가 겪을 수 있는 다양한 공격에 견딜 수 있도록 설계됐다.

 

 

 

|자가 치유, 하드 포크 없는 네트워크

TON 블록체인의 또 다른 주요 혁신에는 자가 치유(self-healing) 또는 자가 복구 메커니즘(self-recovery mechanism)이 있다. 작업을 병렬 처리하는 샤딩으로 인해, 마스터체인의 업데이트가 하위 계층(워크체인 또는 샤드체인)와 충돌할 가능성이 있다. 자가 치유 메커니즘은 이러한 충돌이 발생했을 때 TON 네트워크가 적절한 기능을 유지하도록 하는 역할을 하고, 경우에 따라 문제 해결을 위해 블록을 다시 쓸 수(rewriting the blocks) 있도록 해준다.

물론, 어떤 경우에도 block rewriting이 이전에 생성된 블록을 버린다는 것을 의미하지 않는다. 해당 블록의 기존 데이터는 온전히 새 블록에 연결되어 언제든 지속적으로 관련 정보를 리뷰할 수 있기 때문이다. 이를 통해 TON은 블록체인을 위협하는 이벤트로부터 스스로를 보호하는 동시에, 구조적으로 발생할 수 있는 원치 않는 하드 포크를 방지할 수 있다.

 

|Instant Hypercube Routing을 통한 네트워크 이슈 해결

아이러니하게도 블록체인 네트워크가 직면해야 하는 가장 큰 문제 중 하나는 네트워크의 성장 그 자체다. 이용자 증가에 따라 기하급수적으로 상승하는 P2P구조의 네트워크 복잡성은, 블록체인 운영주체가 기존 합의된 규칙에 따라 모든 부분에 정보를 송수신하는데 갖가지 어려움을 발생시킨다.

우편 또는 택배회사의 예를 들어 쉽게 설명하자면, 이 회사가 100명의 고객을 커버하는 데에는 큰 어려움이 없다. 그런데, 수천개의 우편사가 전세계 수 억명을 대상으로 서비스하기 위해서는 그 난이도가 기하급수적으로 상승하고 효율성에 중대한 문제가 생겨버린다. Solana와 같은 기존 블록체인이 이용자가 급증하면서 흔히 겪는 문제이기도 하다.

 

사실 이 점이야 말로 TON이 직면하고 있는 어려움이다. 앞서 언급했듯이, TON 네트워크는 N개의 작업체인이 마스터체인과 서로 다른 체인과 N^N개의 상호작용을 원활히 수행할 수 있어야 한다. TON은 Instant Hypercube Routing(IHR) 기술을 접목하여 수 많은 노드와 체인들이 빠르고 효율적으로 구동될 수 있도록 설계했다. 이를 통해, 5초마다 새로운 블록이 형성되는 무한 샤딩 패러다임 프로토콜 전체가 언제든 동기화를 유지할 수 있도록 한 것이다.

Instant Hypercube Routing(IHR)에 대하여 최대한 간단히 설명해 보자면, 완전히 같진 않지만 행렬연산법의 예를 들어 볼 수 있다. 5명의 사람이 서로 모두에게 메세지를 보내기 위해서는 5!(5x4x3x2x1=120)번의 작업이 필요하다. 컴퓨터로 따지면 총 120번의 연산이 필요한 작업인데, Hypercube Routing 기술을 활용하면 120번이 아닌 1번의 연산으로 이를 해결할 수 있다.

(여기서 부터는 어려울 수 있다.)각 노드를 한개 숫자의 variable이 아닌 여러 숫자로 이뤄진 벡터 또는 매트릭스(matrix)로 지정하는 것인데, 이를 통해 한 개의 숫자와 다른 숫자간의 연산을 반복하는 것이 아닌 매트릭스 간의 복합연산을 통해 빠르게 결과를 도출해낼 수 있는 것이다. 통상 여기에 활용되는 매트릭스의 차원이 우리에게 익숙한 2~3차원이 아니라 수백 수천 차원의 개념이라 바로 머릿속에 떠올리기는 어렵지만 컴퓨터를 통해 구현할 수 있다.

이 방식은 방대한 데이터를 다뤄야하는 통계 시스템에서 필수적으로 사용되기도 하며, 프로그램의 속도를 획기적으로 증가 시키는데 아주 중요한 역할을 한다. 이 방식을 네트워크간의 커뮤니케이션에 적용했다고 생각하면 된다.

사실 이 문제는 이더리움 2.0의 샤드체인 개발 과정에서 겪고있는 어려움이며, 지금은 해결됐으나 폴카닷 역시 비슷한 문제를 겪은 적이 있다.

 

1,2,3 차원 하이퍼큐브 설명 도식

 

 

5차원 하이퍼큐브 설명 도식

 

|개인 정보 보안 및 익명성

TON이 달성한 또 다른 큰 발전은 사용자의 개인 정보와 익명성을 유지하고 보호하는데 진일보한 기술을 선보였다는 것이다. 예를 들어, 지분증명 네트워크의 일반적인 문제는 모든 staker가 자신이 보유하고 있는 코인의 총량을 공개적으로 볼 수 있는 주소를 공개해야 하고, 공개되어서는 안 되는 데이터를 노출해야 하기도 한다.

이러한 상황을 피하기 위해 TON은 사용자가 네트워크에서 익명으로 정보를 교환할 수 있도록 하는 TON 네트워크의 기능인 TON 프록시를 만들었다. 이를 위해 TON은 I2P(Tor,The Onion Router,와 경쟁하며 보다 우수한 기술 능력을 갖춘 프로토콜)에서 파생된 네트워크 프로토콜을 사용한다. 이는 시스템이 TON 네트워크에서 익명으로 데이터를 보내고 받을 수 있도록 하고 TON을 사용할 때 사람들의 프라이버시와 익명성을 용이하게 하는 zeroconf(without the need for configuration)를 허용한다는 것이다.

TON 블록체인은 위에 설명한 기술 뿐만 아니라, 이더리움의 ENS와 같은 DNS서비스인 TNS 서비스를 이미 상용화했고, Filecoin 또는 Sia와 같은 네트워크 분산 데이터 저장 시스템(TON storage)을 갖추고 있다.

 

물론, 앞으로 해결해야할 관문도 산재해있다. 현재 TON은 고급 스마트 계약 기능을 제공하지만, 예를 들어, NFT와 같은 특수 계약을 배포하기 위한 표준 사양이 아직 부족하여 이에 적합한 특정 토큰의 출시는 작업체인으로 제한되고 있다. 또한, 기존에 많이 알려진 이더리움의 Solidity나 Rust 등 과같은 언어가 아닌 C언어에서 파생한 FunC라는 생소한 언어쳬게를 사용하는 것이 풍부한 개발자 환경을 개척하는데 어려움을 주고 있다.

다만, 전세계 MAU 5억명 사용자를 보유한 Telegram 메신저의 적극적인 협력 및 integration에 힘입어 관련 표준의 확립 및 개발자 pool의 빠른 확장에 대한 기대가 크다고 생각한다.

https://m.invest.zum.com/investment/article/1074

 

차세대 Layer1 TON(The Open Network) 심층 분석 | 줌 투자

한눈에 보는 국내 해외 증시 지수 정보와 전문가의 투자 인사이트를 줌 투자에서 확인하세요

m.invest.zum.com

 

TON (The Open Network)의 탄생과 관련하여 가장 관심이 가는 점이 있다면 아무래도 Telegram과의 관계라고 할 수 있다. 앞서 Telegram은 2018년 자체적으로 구축한 블록체인인 Telegram Open Network와 native token인 $GRAM이라는 암호화폐를 론칭한 바 있다.

기존 $GRAM은 SEC의 제동으로 좌초되었으나, Telegram CEO 파벨 듀로프(Pavel Durov)의 TON에 대한 전폭적인 지지와 메신저와의 긴밀한 협력을 고려하면 TON과 Telegram의 관계를 생각해보지 않을 수 없다.

 

​현재 Telegram이 TON을 적극적으로 서포트하고는 있으나 뚜렷한 공식 관계가 드러난 바는 없다. 이번 포스팅에서는 TON의 다소 복잡할 수 있는 가정사와 탄생 배경에 대하여 살펴보려고 한다.

 

|Telegram Open Network의 등장

앞서 설명한대로, Telegram은 Telegram Open Network라는 현재의 TON과 동명의 블록체인 서비스를 출시했다. 이는 2018년 TechCrunch가 Telegram이 암호화폐 결제를 메신저 앱에 통합할 수 있다는 뉴스로 시작됐다. 당시 Telegram은 Telegram Open Network와의 백서를 발표하며 $GRAM이 탄생했다.

Telegram은 ICO를 통해 $500M을 모아 본격적인 TON 개발을 시작했다. 또한 2021년까지 TON을 Open Foundation의 통제하에 두고 Telegram과 TON의 운영을 분리하여 범위를 확장하고 운영을 분산시키는 계획이었다.

|문제의 시작, SEC vs Telegram

2018년 4월까지 총 $2B의 GRAM 토큰에 대한 private sale이 진행됐고, 이 때까지는 모든 것이 순조로웠다. 다만, 여느 블록체인 프로젝트가 그러하듯, GRAM 역시 크고 작은 문제에 부딪히게 된다. 무엇보다 미국 SEC의 개입은 프로젝트 진행에 중대한 제동을 걸었다.

성공적이었던 private sale 이후 미국 관할권 및 SEC 규정에 따른 public sale이 시작됐는데, 당시 $GRAM에 대한 투자 계약은 향후 토큰이 출시될 때 받을 수 있는 선물 계약의 형태를 띄었다. 해당 선물 계약이 인증된 투자자에게만 판매되었고 TON이 운영되기 시작하는 시점에는 토큰이 유틸리티 성격을 갖게 되면서 증권성 이슈를 피해갈 수 있었다. 이 과정에서 Telegram이 제출한 서류와 SEC의 묵인으로 ICO에 청신호가 켜진 것으로 볼 수 있었다.

 

 

그러나 결국 SEC가 개입하며 2019년 10월 11일 $GRAM의 유통이 일시적으로 제한됐다. SEC는 토큰의 초기 구매자가 증권 인수자 역할을 할 것이며, 토큰 분배가 시작될 시 등록되지 않은 증권이 배포되는 것으로 해석한 것이다. 당시 $GRAM뿐만 아니라 메타(구 페이스북)가 론칭한 Libra 역시 비슷한 제재를 받았다. 힘든 법정 싸움 끝에 2020년 5월 12일 파벨 듀로프는 TON 블록체인에 대한 종료를 발표했고, 기존 판매한 토큰계약에 대한 환불이 2021년까지 진행됐다.

 

|TON의 부활

파벨 듀로프는 사실 SEC의 방해를 어느정도 예견했던 것인지, 처음부터 TON을 오픈소스로 개발하고 코드 전체를 GitHub에 공개했다. Telegram이 당초 원했던 TON을 출시할 수는 없지만 커뮤니티 자체적으로 프로젝트를 개발하고 결실을 맺을 수 있도록 길을 열어둔 것이었다.

 

Telegram이 공식적으로 프로젝트를 중단하기도 전인 2020년 5월 7일 FreeTON이 TON의 오픈소스 기술을 활용하여 시작됐고(향후 FreeTON은 Everscale로 브랜드 변경), 이를 비롯한 복수의 프로젝트가 경쟁하는 가운데 결론적으로 현재의 The Open Network가 운영하는 TONCOIN이 사실상 TON의 정통성을 이어받게 되었다.

Telegram의 파벨 듀로프는 2021년 11월 본인의 채널을 통해 The Open Network에 대하여 공개적으로 지지선언을 밝혔다. 현재 같은 채널을 통해 수차례 TON 프로젝트에 대한 적극적인 관심을 드러내고 있을 뿐만 아니라, 실제로 Telegram 앱 안에 TON wallet 기능 등을 추가하면서 다각적인 지원을 아끼지 않고 있다.

정리해보면, Telegram은 최초에 $GRAM을 론칭했으나, SEC의 개입으로 좌초되었고, 대신 $TON(The Open Network)를 통해 블록체인 비전을 이어간다고 볼 수 있겠다.

여전히 Telegram은 The Open Network 블록체인을 메신저에 연계했을 뿐, 여전히 직접적인 운영에 관여하는 것은 아니다. 그러나, 대중에 대한 파급력이 큰 메이저 SNS 앱의 전폭적인 지원을 등에 업었다는 것은 기존 Layer1의 아킬레스 건인 mass adoption으로 갈 수 있는 기대감을 가져볼만 하다는 생각이다.

 

 

메가톤 파이낸스 커뮤니티 여러분 안녕하세요.

톤(Toncoin)의 상호운용성 문제에 대한 솔루션인 WTON 게이트웨이 출시 소식을 안내해드립니다.

자세한 사항은 아래 내용을 확인해주시기 바랍니다.

1. WTON 게이트웨이 소개

TON ↔ WTON 게이트웨이는 톤(Toncoin)을 젯톤(Jetton) 표준인 랩트톤(WTON)으로 변환해주는 서비스를 제공합니다. 랩트톤은 톤(TON: The Open Network) 블록체인 출시 이후 개발된 젯톤 토큰 표준으로, 톤 블록체인에서 토큰이 전송되는 방식 및 토큰 간의 일관된 전송 기록을 유지하는 방법을 정의합니다. 랩트톤은 톤 네트워크 내의 톤과 1:1로 지원되는 최초의 젯톤 표준 토큰입니다.

기존 톤 보유자는 가상자산 거래소에서만 활용 및 거래가 가능했습니다. WTON 게이트웨이에서 톤을 랩트톤으로 변환함으로써 메가톤 파이낸스를 비롯한 톤 생태계의 디파이 프로토콜에서도 톤을 사용할 수 있습니다. 또한, 언랩(unwrap) 기능을 사용하여 랩트톤에서 다시 톤으로 변환할 수 있습니다.

2. WTON 게이트웨이 출시 배경

톤은 글로벌 메신저 플랫폼인 텔레그램이 설계한 레이어 1 블록체인인 톤의 네이티브 토큰입니다. 하지만 톤 블록체인의 기축통화인 톤은 다른 EVM 기반 코인 및 알트코인과 호환하지 않습니다. 각각의 블록체인은 별개의 시스템이므로, 기본적으로 특정 블록체인에 존재하는 코인은 다른 블록체인에서 활용할 수 없습니다. 하지만, 우리 팀은 고립된 톤 블록체인을 활성화하고, 톤 블록체인의 기술력과 문화적 다양성을 기반으로 하는 톤 생태계를 구축하기 위해서는 가장 먼저 톤의 활용성을 제고하는 것이 필요하다고 판단했습니다. 이에 끊임없이 고민한 결과, 톤의 상호운용성 문제를 래핑(wrapping)이라는 방법으로 해결할 수 있다는 결론을 도출했습니다.

래핑은 ‘랩트톤’이라는 톤과 동등한 토큰을 패키징이 아닌, 스마트 컨트랙트를 통해 거래하는 것을 의미합니다. 쉽게 말해, 래핑이란 블록체인 간 비(非)상호운용성이라는 제한을 우회하여 다른 블록체인에서 토큰을 사용하는 방법입니다. 앞서 언급한 대로, 톤 블록체인에 존재하는 톤은 다른 블록체인에서 활용할 수 없습니다. 하지만 WTON 게이트웨이에서 톤을 래핑함으로써 메가톤 파이낸스를 비롯한 톤 메인넷의 디앱에서 톤을 활용하고, 다른 EVM 기반 토큰과 교환 및 거래할 수 있습니다.

3. WTON 게이트웨이 기대 효과

톤을 스마트 컨트랙트를 기반으로 한 다양한 기능에서 활용하려면 젯톤 표준 토큰인 랩트톤으로 변환해야 합니다. WTON 게이트웨이에서 랩트톤으로 변환함으로써 톤 블록체인에 구축된 기본 통화인 톤의 사용 범위를 확장할 수 있습니다.

즉, 랩트톤은 블록체인의 상호운용성 문제에 대한 솔루션입니다. 랩트톤은 젯톤 표준의 유연성을 갖춘 토큰으로, 탈중앙화된 플랫폼들에서 ETH를 자유롭게 다른 토큰들과 호환할 수 있도록 ERC-20 토큰화한 랩트이더(wETH)와 같은 역할을 할 것입니다. 톤과 랩트톤은 언제든지 1:1로 교환이 가능하고, 랩트톤은 다양한 디앱에서 ETH, USDT, USDC, MATIC 등 다양한 ERC-20 토큰으로 교환 및 스왑이 가능합니다.

사용자는 랩트톤을 톤 블록체인 기반의 DEX인 메가톤 파이낸스를 비롯한 여타 톤 생태계 내의 디파이 프로토콜에서 활용할 수 있습니다. 또한, 이더리움, 폴리곤, 클레이튼 등 다른 블록체인 내의 다양한 디파이 프로토콜에서 주요 암호화 자산으로 발돋움할 뿐만 아니라, 멀티체인 유니버스를 오가는 사용자를 연결하는 매개가 될 것으로 기대합니다.

 

[WTON 게이트웨이 사용자 가이드 및 참고사항]

  • WTON 게이트웨이 사용자 가이드
  • WTON 게이트웨이를 통해 톤 래핑(wrapping) 시 랩트톤으로 전환되고, 언랩(unwrap) 기능 활용 시, 다시 TON으로 변환 가능
  • TON 블록체인 지원 지갑: TON Wallet, Tonhub (추후 Tonkeeper, Tonic, OpenMask, Coin98 Wallet 지원 예정)
 

오지스는 수년간 다양한 블록체인 프로젝트와 긴밀히 협력해 유기적 블록체인 기술을 축적했고, 인프라도 구축했습니다. 지금까지 쌓은 경험과 노하우를 바탕으로 메가톤 파이낸스와 WTON 게이트웨이를 출시했습니다. WTON 게이트웨이는 기존 톤 블록체인에서 활용성이 부족했던 톤을 사용할 수 있게 함으로써 사용자, 재단, 다양한 디파이 프로토콜과 메가톤 파이낸스 간 연결고리 역할을 수행할 것입니다. 톤 블록체인 연결로 7억명의 텔레그램 유저를 품고, 나아가 국경의 경계 없이(Borderless) 전 세계 사용자를 포용하는 디파이 프로토콜로 성장할 메가톤 파이낸스의 미래를 기대 바랍니다. 여러분의 변함없는 관심과 지속적인 성원을 부탁드립니다.

 

megaton finance

Teams & Products

 

 

https://medium.com/megatonfinance/wton-%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4-%EC%B6%9C%EC%8B%9C-22a3f3d69666

 

WTON 게이트웨이 출시

메가톤 파이낸스 커뮤니티 여러분 안녕하세요.

medium.com

 

 

https://wton.dev/

 

WTON | Tradable version of TON

 

wton.dev



WTON 게이트웨이 사용하기
https://docs.megaton.fi/guides/wton

 

WTON 게이트웨이 사용하기 - Megaton Finance

톤 코인(TON)은 TON 네트워크에서 다른 EVM 기반 코인 및 알트코인과 호환하지 않습니다. 이러한 TON 네트워크의 특성상 기존의 TON을 메가톤 파이낸스에서 그대로 사용할 수 없으므로, WTON 게이트웨

docs.megaton.fi

 

+ Recent posts